Documented in 1 files:
Defined in 1 files as a function:
Referenced in 47 files:
- arch/arm64/include/asm/atomic.h, line 53
- drivers/base/power/runtime.c, line 1083
- drivers/block/drbd/drbd_int.h, line 1951
- drivers/block/drbd/drbd_receiver.c, line 154
- drivers/crypto/intel/qat/qat_common/adf_dev_mgr.c, line 341
- drivers/crypto/virtio/virtio_crypto_mgr.c, line 116
- drivers/gpu/drm/i915/gt/gen6_ppgtt.c, line 93
- drivers/gpu/drm/i915/i915_vma.c, line 1401
- drivers/infiniband/ulp/rtrs/rtrs-srv.c, line 504
- drivers/infiniband/ulp/srpt/ib_srpt.c
- drivers/md/bcache/btree.c, line 284
- drivers/md/bcache/request.c, line 195
- drivers/net/ethernet/huawei/hinic/hinic_hw_wq.c, line 750
- drivers/net/ethernet/ibm/ibmvnic.c
- drivers/net/ethernet/microsoft/mana/mana_en.c, line 2023
- drivers/net/wireless/ath/carl9170/tx.c, line 199
- drivers/net/wwan/t7xx/t7xx_hif_dpmaif_tx.c, line 310
- drivers/nvme/target/rdma.c, line 949
- drivers/s390/cio/qdio_main.c
- drivers/scsi/elx/efct/efct_io.c, line 166
- drivers/scsi/elx/efct/efct_lio.c
- drivers/scsi/elx/efct/efct_scsi.c
- drivers/scsi/mpi3mr/mpi3mr_os.c
- drivers/tty/tty_buffer.c, line 210
- drivers/vhost/net.c, line 266
- drivers/vhost/vsock.c, line 348
- drivers/video/fbdev/sh_mobile_lcdcfb.c, line 349
- drivers/w1/slaves/w1_therm.c, line 1039
- drivers/w1/w1.c, line 785
- drivers/w1/w1_netlink.c, line 64
- drivers/xen/gntdev.c, line 434
- fs/btrfs/inode.c, line 1560
- fs/gfs2/log.c, line 545
- fs/inode.c, line 2078
- fs/smb/smbdirect/socket.c, line 730
- include/linux/page_ref.h, line 162
- include/linux/skbuff.h, line 1310
- io_uring/poll.c, line 332
- io_uring/waitid.c, line 183
- kernel/module/main.c, line 763
- net/9p/trans_rdma.c, line 340
- net/mac80211/sta_info.c
- net/rds/ib_send.c, line 233
- net/sched/sch_taprio.c, line 698
- net/sunrpc/xprtrdma/svc_rdma_sendto.c
- net/vmw_vsock/virtio_transport.c, line 298
- rust/helpers/atomic.c, line 101
Smatch caller information:
fs/gfs2/log.c __gfs2_log_reserve() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
net/rds/ib_send.c rds_ib_sub_signaled() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $1 |
lib/atomic64_test.c test_atomic() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 286335522 |
| PARAM_VALUE | 1 | v | 244908970501345280 |
| PARAM_VALUE | 1 | v->counter | (-1432153289) |
lib/atomic64_test.c test_atomic() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-1) |
| PARAM_VALUE | 1 | v | 244908970501345280 |
| PARAM_VALUE | 1 | v->counter | (-1432153289) |
drivers/video/fbdev/sh_mobile_lcdcfb.c sh_mobile_lcdc_clk_off() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/w1/slaves/w1_therm.c w1_therm_remove_slave() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &dev->list_mutex | ||
| HALF_LOCKED2 | &dev->bus_mutex | ||
| TYPE_LOCK | (struct w1_master)->list_mutex |
drivers/net/ethernet/microsoft/mana/mana_en.c mana_poll_tx_cq() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ni->dev_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
fs/inode.c iput_not_last() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | v->counter | 2-s32max |
| PREEMPT_ADD | |||
| LOCK2 | &sb->s_inode_list_lock | ||
| TYPE_LOCK | (struct super_block)->s_inode_list_lock |
net/core/skbuff.c skb_data_unref() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1,65537 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| BIT_INFO | 0 | i | 0x1,0x10001 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/btrfs/inode.c submit_compressed_extents() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| UNITS | 0 | i | unit_page |
| HALF_LOCKED2 | &pool->lock |
drivers/gpu/drm/i915/i915_vma.c __vma_put_pages() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $1 |
| BIT_INFO | 0 | i | 0x0,0xff0000ff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | obj->base.resv | ||
| HALF_LOCKED2 | vma->obj->base.resv |
net/sched/sch_taprio.c taprio_update_budgets() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &sch->seqlock | ||
| HALF_LOCKED2 | bh |
drivers/w1/w1_netlink.c w1_unref_block() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/vhost/net.c vhost_net_ubuf_put() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &vq->mutex |
drivers/block/drbd/drbd_receiver.c drbd_free_pages() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1-s32max |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/md/bcache/request.c bch_data_insert_start() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-8388607 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/xen/gntdev.c __unmap_grant_pages_done() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-s32max |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| FUZZY_MAX | 0 | i | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/base/power/runtime.c rpm_drop_usage_count() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev->power.lock | ||
| HALF_LOCKED2 | irq |
drivers/tty/tty_buffer.c tty_buffer_free() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | i | unit_byte |
| LOCK2 | &buf->lock | ||
| TYPE_LOCK | (struct tty_bufhead)->lock |
fs/smb/smbdirect/socket.c smbdirect_socket_wait_for_credits() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-s32max |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $5 |
| DATA_SOURCE | 1 | v | $4 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
net/vmw_vsock/virtio_transport.c virtio_transport_cancel_pkt() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1-s32max |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | r virtio_transport_purge_skbs |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| LOCK2 | sk |
drivers/scsi/elx/efct/efct_lio.c efct_lio_release_cmd() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/scsi/elx/efct/efct_lio.c efct_scsi_del_initiator() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &efc->lock | ||
| HALF_LOCKED2 | &frag->frag_sem | ||
| HALF_LOCKED2 | flags |
drivers/scsi/elx/efct/efct_scsi.c efct_scsi_check_pending() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/scsi/elx/efct/efct_scsi.c efct_scsi_check_pending() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/scsi/elx/efct/efct_scsi.c efct_scsi_check_pending() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &xport->io_pending_lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct efct_xport)->io_pending_lock |
drivers/scsi/elx/efct/efct_scsi.c efct_scsi_check_pending() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/scsi/elx/efct/efct_scsi.c efct_scsi_dispatch_pending() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/mac80211/sta_info.c ieee80211_sta_update_pending_airtime() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4-4092 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
net/mac80211/sta_info.c ieee80211_sta_update_pending_airtime() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4-4092 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
net/mac80211/sta_info.c ieee80211_sta_update_pending_airtime() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4-4092 |
| DATA_SOURCE | 0 | i | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/crypto/virtio/virtio_crypto_mgr.c virtcrypto_dev_put() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
io_uring/poll.c io_poll_check_events() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | s32min-1073741823 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | _T->lock |
net/9p/trans_rdma.c rdma_request() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | v->counter | 1-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &client->trans->sq_sem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &v9ses->rename_sem |
drivers/infiniband/ulp/rtrs/rtrs-srv.c rtrs_srv_resp_rdma() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/w1/w1.c w1_unref_slave() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &dev->list_mutex | ||
| HALF_LOCKED2 | &dev->bus_mutex | ||
| TYPE_LOCK | (struct w1_master)->list_mutex |
drivers/vhost/vsock.c vhost_transport_cancel_pkt() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1-s32max |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | r virtio_transport_purge_skbs |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| LOCK2 | sk |
drivers/infiniband/ulp/srpt/ib_srpt.c srpt_queue_response() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/infiniband/ulp/srpt/ib_srpt.c srpt_write_pending() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock |
drivers/scsi/elx/efct/efct_io.c efct_io_pool_io_free() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/wwan/t7xx/t7xx_hif_dpmaif_tx.c t7xx_dpmaif_add_skb_to_ring() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
drivers/net/wireless/ath/carl9170/tx.c carl9170_alloc_dev_space() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &queue->lock | ||
| LOCK2 | bh | ||
| TYPE_LOCK | (struct sk_buff_head)->lock |
drivers/gpu/drm/i915/gt/gen6_ppgtt.c gen6_ppgtt_clear_range() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1-1024 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| CAPPED_DATA | 0 | i | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ggtt->error_mutex | ||
| HALF_LOCKED2 | &vm->mutex | ||
| HALF_LOCKED2 | obj->base.resv |
drivers/md/bcache/btree.c btree_complete_write() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &b->write_lock | ||
| HALF_LOCKED2 | &c->bucket_lock |
drivers/crypto/intel/qat/qat_common/adf_dev_mgr.c adf_dev_put() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &accel_dev->state_lock | ||
| HALF_LOCKED2 | global &service_lock |
drivers/nvme/target/rdma.c nvmet_rdma_execute_command() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
io_uring/waitid.c io_waitid_drop_issue_ref() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/net/ethernet/huawei/hinic/hinic_hw_wq.c hinic_get_wqe() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &cmdq->cmdq_lock | ||
| HALF_LOCKED2 | bh |
drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_process_op_reply_desc() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-8388607 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &drv_cmd->mutex | ||
| HALF_LOCKED2 | &op_req_q->q_lock | ||
| HALF_LOCKED2 | flags |
drivers/scsi/mpi3mr/mpi3mr_os.c mpi3mr_process_op_reply_desc() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-8388607 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &drv_cmd->mutex | ||
| HALF_LOCKED2 | &op_req_q->q_lock | ||
| HALF_LOCKED2 | flags |
net/sunrpc/xprtrdma/svc_rdma_sendto.c svc_rdma_sq_wait() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $2 |
| HARD_MAX | 0 | i | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | i | unit_byte |
net/sunrpc/xprtrdma/svc_rdma_sendto.c svc_rdma_sq_wait() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| CAPPED_DATA | 0 | i | 1 |
| DATA_SOURCE | 0 | i | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | i | unit_byte |
net/sunrpc/xprtrdma/svc_rdma_sendto.c svc_rdma_sq_wait() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 0-1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| CAPPED_DATA | 0 | i | 1 |
| DATA_SOURCE | 0 | i | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | i | unit_byte |
kernel/module/main.c try_release_module_ref() -> atomic_sub_return()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 1 |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| CAPABLE | 0 | 16 | |
| LOCK2 | global &module_mutex |