atomic_sub_return
#define atomic_sub(i, v) atomic_sub_return((i), (v))
#define atomic_sub_and_test(i, v) (atomic_sub_return((i), (v)) == 0)
#define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
#define atomic_dec_return(v) atomic_sub_return(1, (v))
#define atomic_dec_return(p) atomic_sub_return(1, p)
#define atomic_sub_and_test(v, p) (atomic_sub_return(v, p) == 0)
#define atomic_dec_return(p) atomic_sub_return(1, p)
if (atomic_sub_return(pkt_transmitted, &txq->pending_sends) < 0)
return atomic_sub_return(inValue, (QatUtilsAtomic *)pAtomicVar);
if (atomic_sub_return(1, &accel_dev->ref_count) == 0)