2 /* Useful defines to use with sparse */
8 # define __acquires(x) __attribute__((context(x,0,1)))
9 # define __releases(x) __attribute__((context(x,1,0)))
10 # define __acquire(x) __context__(x,1)
11 # define __release(x) __context__(x,-1)
12 /* __with_lock_acquired() is at the moment just documentation, but we keep it
13 * in case sparse gets the ability to match exact contexts again */
14 //# define __with_lock_acquired(x) __attribute__((exact_context(x,1,1)))
15 # define __with_lock_acquired(x)
17 # define __acquires(x)
18 # define __releases(x)
19 # define __with_lock_acquired(x)
20 # define __acquire(x) (void)0
21 # define __release(x) (void)0