Searched refs:atomic_sub_return (Results 1 - 57 of 57) sorted by relevance

/linux-4.4.14/arch/metag/include/asm/
H A Datomic.h22 #define atomic_dec_return(v) atomic_sub_return(1, (v))
35 #define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
36 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
/linux-4.4.14/arch/sh/include/asm/
H A Datomic.h29 #define atomic_dec_return(v) atomic_sub_return(1, (v))
32 #define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0)
33 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
H A Drwsem.h91 if (atomic_sub_return(RWSEM_ACTIVE_WRITE_BIAS, __up_write()
/linux-4.4.14/arch/mn10300/include/asm/
H A Datomic.h112 atomic_sub_return(1, v); atomic_dec()
115 #define atomic_dec_return(v) atomic_sub_return(1, (v))
118 #define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
119 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
/linux-4.4.14/arch/sparc/include/asm/
H A Datomic_64.h44 #define atomic_dec_return(v) atomic_sub_return(1, v)
61 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
64 #define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
H A Datomic_32.h38 #define atomic_sub_return(i, v) (atomic_add_return(-(int)(i), (v))) macro
55 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
/linux-4.4.14/arch/h8300/include/asm/
H A Datomic.h54 #define atomic_sub(i, v) (void)atomic_sub_return(i, v)
55 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
58 #define atomic_dec_return(v) atomic_sub_return(1, v)
/linux-4.4.14/include/asm-generic/
H A Datomic.h97 #ifndef atomic_sub_return
156 atomic_sub_return(i, v); atomic_sub()
166 atomic_sub_return(1, v); atomic_dec()
169 #define atomic_dec_return(v) atomic_sub_return(1, (v))
172 #define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
/linux-4.4.14/arch/ia64/include/asm/
H A Datomic.h60 #define atomic_sub_return(i,v) \ macro
190 #define atomic_dec_return(v) atomic_sub_return(1, (v))
195 #define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0)
196 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
203 #define atomic_sub(i,v) (void)atomic_sub_return((i), (v))
/linux-4.4.14/arch/avr32/include/asm/
H A Datomic.h91 * atomic_sub_return - subtract the atomic variable
97 static inline int atomic_sub_return(int i, atomic_t *v) atomic_sub_return() function
184 #define atomic_sub(i, v) (void)atomic_sub_return(i, v)
189 #define atomic_dec_return(v) atomic_sub_return(1, v)
192 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
194 #define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
/linux-4.4.14/arch/frv/include/asm/
H A Datomic.h53 static inline int atomic_sub_return(int i, atomic_t *v) atomic_sub_return() function
70 atomic_sub_return(i, v); atomic_sub()
83 #define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0)
84 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
/linux-4.4.14/arch/arm64/include/asm/
H A Datomic.h72 #define atomic_sub_return atomic_sub_return macro
77 #define atomic_dec_return(v) atomic_sub_return(1, (v))
96 #define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
H A Datomic_lse.h140 static inline int atomic_sub_return##name(int i, atomic_t *v) \
/linux-4.4.14/arch/blackfin/include/asm/
H A Datomic.h29 #define atomic_sub_return(i, v) __raw_atomic_add_asm(&(v)->counter, -(i)) macro
/linux-4.4.14/arch/tile/include/asm/
H A Datomic.h41 * atomic_sub_return - subtract integer and return
47 #define atomic_sub_return(i, v) atomic_add_return((int)(-(i)), (v)) macro
66 #define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
82 #define atomic_dec_return(v) atomic_sub_return(1, (v))
/linux-4.4.14/arch/s390/include/asm/
H A Datomic.h116 #define atomic_sub_return(_i, _v) atomic_add_return(-(int)(_i), _v) macro
117 #define atomic_sub_and_test(_i, _v) (atomic_sub_return(_i, _v) == 0)
119 #define atomic_dec_return(_v) atomic_sub_return(1, _v)
120 #define atomic_dec_and_test(_v) (atomic_sub_return(1, _v) == 0)
/linux-4.4.14/arch/xtensa/include/asm/
H A Drwsem.h85 tmp = atomic_sub_return(1,(atomic_t *)(&sem->count)); __up_read()
96 if (atomic_sub_return(RWSEM_ACTIVE_WRITE_BIAS, __up_write()
H A Datomic.h165 #define atomic_sub_and_test(i,v) (atomic_sub_return((i),(v)) == 0)
197 #define atomic_dec_return(v) atomic_sub_return(1,(v))
207 #define atomic_dec_and_test(v) (atomic_sub_return(1,(v)) == 0)
/linux-4.4.14/include/linux/
H A Datomic.h110 #define atomic_sub_return_relaxed atomic_sub_return
111 #define atomic_sub_return_acquire atomic_sub_return
112 #define atomic_sub_return_release atomic_sub_return
118 __atomic_op_acquire(atomic_sub_return, __VA_ARGS__)
123 __atomic_op_release(atomic_sub_return, __VA_ARGS__)
126 #ifndef atomic_sub_return
127 #define atomic_sub_return(...) \ macro
128 __atomic_op_fence(atomic_sub_return, __VA_ARGS__)
/linux-4.4.14/arch/x86/include/asm/
H A Datomic.h161 * atomic_sub_return - subtract integer and return
167 static __always_inline int atomic_sub_return(int i, atomic_t *v) atomic_sub_return() function
173 #define atomic_dec_return(v) (atomic_sub_return(1, v))
/linux-4.4.14/arch/alpha/include/asm/
H A Datomic.h233 #define atomic_dec_return(v) atomic_sub_return(1,(v))
239 #define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0)
245 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
/linux-4.4.14/arch/arc/include/asm/
H A Datomic.h224 #define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
226 #define atomic_dec_return(v) atomic_sub_return(1, (v))
227 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
/linux-4.4.14/arch/hexagon/include/asm/
H A Datomic.h183 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
184 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, (v)) == 0)
188 #define atomic_dec_return(v) (atomic_sub_return(1, v))
/linux-4.4.14/arch/mips/include/asm/
H A Datomic.h242 #define atomic_dec_return(v) atomic_sub_return(1, (v))
254 #define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
274 #define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
/linux-4.4.14/arch/powerpc/mm/
H A Dmmu_context_hash64.c121 count = atomic_sub_return(PTE_FRAG_NR - count, &page->_count); destroy_pagetable_page()
/linux-4.4.14/arch/m68k/include/asm/
H A Datomic.h156 #define atomic_dec_return(v) atomic_sub_return(1, (v))
/linux-4.4.14/arch/arm/include/asm/
H A Datomic.h212 #define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
215 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
/linux-4.4.14/drivers/md/bcache/
H A Dclosure.c48 closure_put_after_sub(cl, atomic_sub_return(v, &cl->remaining)); closure_sub()
H A Drequest.c199 if (atomic_sub_return(bio_sectors(bio), &op->c->sectors_to_gc) < 0) { bch_data_insert_start()
H A Dbtree.c328 !atomic_sub_return(w->prio_blocked, &b->c->prio_blocked)) btree_complete_write()
/linux-4.4.14/arch/parisc/include/asm/
H A Datomic.h157 #define atomic_sub_and_test(i,v) (atomic_sub_return((i),(v)) == 0)
/linux-4.4.14/arch/m32r/include/asm/
H A Datomic.h114 #define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0)
/linux-4.4.14/arch/powerpc/include/asm/
H A Datomic.h224 #define atomic_sub_and_test(a, v) (atomic_sub_return((a), (v)) == 0)
/linux-4.4.14/arch/x86/kernel/cpu/mcheck/
H A Dmce_intel.c187 if (!atomic_sub_return(1, &cmci_storm_on_cpus)) cmci_intel_adjust_timer()
/linux-4.4.14/drivers/w1/slaves/
H A Dw1_therm.c83 int refcnt = atomic_sub_return(1, THERM_REFCNT(sl->family_data)); w1_therm_remove_slave()
/linux-4.4.14/drivers/crypto/qat/qat_common/
H A Dadf_dev_mgr.c439 if (atomic_sub_return(1, &accel_dev->ref_count) == 0) adf_dev_put()
/linux-4.4.14/drivers/tty/
H A Dtty_buffer.c193 WARN_ON(atomic_sub_return(b->size, &buf->mem_used) < 0); tty_buffer_free()
/linux-4.4.14/drivers/misc/mic/scif/
H A Dscif_fence.c386 if (!atomic_sub_return(1, &ep->rma_info.fence_refcount)) scif_rma_handle_remote_fences()
H A Dscif_rma.c338 j = atomic_sub_return(1, &pinned_pages->ref_count); scif_destroy_window()
1462 ret = atomic_sub_return(1, &pinned_pages->ref_count); scif_unpin_pages()
/linux-4.4.14/net/9p/
H A Dtrans_rdma.c446 if ((atomic_sub_return(1, &rdma->excess_rc) >= 0)) { rdma_request()
/linux-4.4.14/net/sunrpc/xprtrdma/
H A Dxprt_rdma.h98 #define DECR_CQCOUNT(ep) atomic_sub_return(1, &(ep)->rep_cqcount)
/linux-4.4.14/drivers/w1/
H A Dw1_netlink.c83 if (atomic_sub_return(1, &block->refcnt) == 0) { w1_unref_block()
H A Dw1.c785 refcnt = atomic_sub_return(1, &sl->refcnt); w1_unref_slave()
/linux-4.4.14/drivers/vhost/
H A Dnet.c139 int r = atomic_sub_return(1, &ubufs->refcount); vhost_net_ubuf_put()
/linux-4.4.14/net/rds/
H A Dib_send.c228 if ((atomic_sub_return(nr, &ic->i_signaled_sends) == 0) && rds_ib_sub_signaled()
/linux-4.4.14/drivers/s390/cio/
H A Dqdio_main.c530 if (atomic_sub_return(count, &q->nr_buf_used) == 0) get_inbound_buffer_frontier()
/linux-4.4.14/drivers/net/wireless/cw1200/
H A Dwsm.c1233 tx_lock = atomic_sub_return(1, &priv->tx_lock); wsm_unlock_tx()
/linux-4.4.14/drivers/net/wireless/ath/carl9170/
H A Dtx.c199 if (unlikely(atomic_sub_return(chunks, &ar->mem_free_blocks) < 0)) { carl9170_alloc_dev_space()
/linux-4.4.14/drivers/isdn/gigaset/
H A Dcapi.c2311 while (atomic_sub_return(1, &iif->sendqlen) > 0) { gigaset_send_message()
/linux-4.4.14/drivers/video/fbdev/
H A Dsh_mobile_lcdcfb.c356 if (atomic_sub_return(1, &priv->hw_usecnt) == -1) { sh_mobile_lcdc_clk_off()
/linux-4.4.14/drivers/infiniband/ulp/srpt/
H A Dib_srpt.c2780 sq_wr_avail = atomic_sub_return(n_rdma, &ch->sq_wr_avail); srpt_perform_rdmas()
/linux-4.4.14/fs/btrfs/
H A Dinode.c1107 * atomic_sub_return implies a barrier for waitqueue_active async_cow_submit()
1109 if (atomic_sub_return(nr_pages, &root->fs_info->async_delalloc_pages) < async_cow_submit()
/linux-4.4.14/net/core/
H A Dskbuff.c580 atomic_sub_return(skb->nohdr ? (1 << SKB_DATAREF_SHIFT) + 1 : 1, skb_release_data()
/linux-4.4.14/kernel/
H A Dmodule.c911 ret = atomic_sub_return(MODULE_REF_BASE, &mod->refcnt); try_release_module_ref()
/linux-4.4.14/net/ipv4/
H A Dtcp_output.c863 wmem = atomic_sub_return(skb->truesize - 1, &sk->sk_wmem_alloc); tcp_wfree()
/linux-4.4.14/drivers/block/drbd/
H A Ddrbd_receiver.c319 i = atomic_sub_return(i, a); drbd_free_pages()
/linux-4.4.14/drivers/md/
H A Draid5.c160 return atomic_sub_return(1, segments) & 0xffff; raid5_dec_bi_active_stripes()

Completed in 2059 milliseconds