/linux-6.12.1/Documentation/translations/zh_CN/core-api/ |
D | xarray.rst | 68 你可以通过使用xa_cmpxchg()有条件地替换一个索引中的条目。和cmpxchg()一样,它只有在该索 70 目,那么xa_cmpxchg()就成功了。 121 使用xa_store()、xa_cmpxchg()或xa_insert()也将标记该条目为正在分配。与普通的XArray不同,存储 ``NULL`` 135 xa_store(), xa_cmpxchg(), xa_alloc(), xa_reserve()和xa_insert()函数接受一个gfp_t参数,以 172 * xa_cmpxchg()
|
/linux-6.12.1/include/linux/ |
D | xarray.h | 692 static inline void *xa_cmpxchg(struct xarray *xa, unsigned long index, in xa_cmpxchg() function 1082 return xa_err(xa_cmpxchg(xa, index, NULL, XA_ZERO_ENTRY, gfp)); in xa_reserve() 1132 xa_cmpxchg(xa, index, XA_ZERO_ENTRY, NULL, 0); in xa_release()
|
/linux-6.12.1/lib/ |
D | test_xarray.c | 413 XA_BUG_ON(xa, xa_cmpxchg(xa, 12345678, SIX, FIVE, GFP_KERNEL) != LOTS); in check_cmpxchg() 414 XA_BUG_ON(xa, xa_cmpxchg(xa, 12345678, LOTS, FIVE, GFP_KERNEL) != LOTS); in check_cmpxchg() 415 XA_BUG_ON(xa, xa_cmpxchg(xa, 12345678, FIVE, LOTS, GFP_KERNEL) != FIVE); in check_cmpxchg() 416 XA_BUG_ON(xa, xa_cmpxchg(xa, 5, FIVE, NULL, GFP_KERNEL) != NULL); in check_cmpxchg() 417 XA_BUG_ON(xa, xa_cmpxchg(xa, 5, NULL, FIVE, GFP_KERNEL) != NULL); in check_cmpxchg() 419 XA_BUG_ON(xa, xa_cmpxchg(xa, 5, FIVE, NULL, GFP_KERNEL) != FIVE); in check_cmpxchg() 457 XA_BUG_ON(xa, xa_cmpxchg(xa, 0, FIVE, NULL, GFP_KERNEL) != FIVE); in check_cmpxchg_order() 502 XA_BUG_ON(xa, xa_cmpxchg(xa, 12345678, XA_ZERO_ENTRY, in check_reserve()
|
/linux-6.12.1/drivers/infiniband/hw/mlx4/ |
D | cm.c | 352 deleted = xa_cmpxchg(item->xa_rej_tmout, item->rem_pv_cm_id, item, NULL, 0); in rej_tmout_timeout() 388 old = xa_cmpxchg(&sriov->xa_rej_tmout, (unsigned long)rem_pv_cm_id, NULL, item, GFP_KERNEL); in alloc_rej_tmout()
|
/linux-6.12.1/drivers/infiniband/core/ |
D | rdma_core.c | 608 old = xa_cmpxchg(&ufile->idr, obj_old->id, obj_old, XA_ZERO_ENTRY, in swap_idr_uobjects() 615 old = xa_cmpxchg(&ufile->idr, obj_old->id, NULL, obj_old, GFP_KERNEL); in swap_idr_uobjects()
|
D | ucma.c | 534 xa_cmpxchg(&ctx_table, uevent->conn_req_ctx->id, in ucma_cleanup_ctx_events() 583 WARN_ON(xa_cmpxchg(&ctx_table, ctx->id, XA_ZERO_ENTRY, NULL, in ucma_destroy_private_ctx() 1806 WARN_ON(xa_cmpxchg(&ctx_table, ctx->id, ctx, XA_ZERO_ENTRY, in ucma_close()
|
/linux-6.12.1/Documentation/core-api/ |
D | xarray.rst | 75 xa_cmpxchg(). Like cmpxchg(), it will only succeed if 78 'old', then xa_cmpxchg() succeeded. 152 Using xa_store(), xa_cmpxchg() or xa_insert() will 171 The xa_store(), xa_cmpxchg(), xa_alloc(), 213 * xa_cmpxchg()
|
/linux-6.12.1/drivers/nvme/target/ |
D | passthru.c | 603 old = xa_cmpxchg(&passthru_subsystems, ctrl->instance, NULL, in nvmet_passthru_ctrl_enable()
|
/linux-6.12.1/drivers/dma/idxd/ |
D | cdev.c | 197 ptr = xa_cmpxchg(&wq->upasid_xa, ctx->pasid, ctx, NULL, GFP_KERNEL); in idxd_xa_pasid_remove()
|
/linux-6.12.1/fs/cachefiles/ |
D | ondemand.c | 388 if (xa_cmpxchg(xas->xa, xas->xa_index, req, NULL, 0) != req) in cachefiles_ondemand_finish_req()
|
/linux-6.12.1/drivers/block/rnbd/ |
D | rnbd-srv.c | 219 xa_cmpxchg(&sess_dev->sess->index_idr, sess_dev->device_id, in rnbd_destroy_sess_dev()
|
/linux-6.12.1/drivers/iommu/iommufd/ |
D | device.c | 27 xa_cmpxchg(&igroup->ictx->groups, iommu_group_id(igroup->group), igroup, in iommufd_group_release()
|
/linux-6.12.1/mm/ |
D | zswap.c | 1045 if (entry != xa_cmpxchg(tree, offset, entry, NULL, GFP_KERNEL)) { in zswap_writeback_entry()
|
/linux-6.12.1/net/netlink/ |
D | genetlink.c | 756 old_priv = xa_cmpxchg(family->sock_privs, (unsigned long) sk, NULL, in genl_sk_priv_get()
|
/linux-6.12.1/drivers/infiniband/hw/mlx5/ |
D | mr.c | 2064 xa_cmpxchg(&dev->sig_mrs, mlx5_base_mkey(mr->mmkey.key), in __mlx5_ib_dereg_mr()
|
/linux-6.12.1/drivers/iommu/intel/ |
D | iommu.c | 1511 curr = xa_cmpxchg(&domain->iommu_array, iommu->seq_id, in domain_attach_iommu()
|