#ifndef _LINUX_ATOMIC_H#define _LINUX_ATOMIC_H#include <asm/atomic.h>/** * atomic_inc_not_zero_hint - increment if not null * @v: pointer of type atomic_t * @hint: probable value of the atomic before the increment * * This version of atomic_inc_not_zero() gives a hint of probable * value of the atomic. This helps processor to not read the memory * before doing the atomic read/modify/write cycle, lowering * number of bus transactions on some arches. * * Returns: 0 if increment was not done, 1 otherwise. */#ifndef atomic_inc_not_zero_hintstaticinlineintatomic_inc_not_zero_hint(atomic_t*v,inthint){intval,c=hint;/* sanity test, should be removed by compiler if hint is a constant */if(!hint)returnatomic_inc_not_zero(v);do{val=atomic_cmpxchg(v,c,c+1);if(val==c)return1;c=val;}while(c);return0;}#endif#endif /* _LINUX_ATOMIC_H */