Re: [patch 4/6] brlock: introduce special brlocks

Nick Piggin
2009-10-19T09:49:08Z

On Sun, Oct 18, 2009 at 10:25:12PM -0700, Andrew Morton wrote:
> On Thu, 15 Oct 2009 15:40:30 +1100 npiggin@suse.de wrote:
>
> > +#define DECLARE_BRLOCK(name) \
>
> This:
>
> > + DECLARE_PER_CPU(spinlock_t, name##_lock); \
> > + static inline void name##_lock_init(void) { \
> > + int i; \
> > + for_each_possible_cpu(i) { \
> > + spinlock_t *lock; \
> > + lock = &per_cpu(name##_lock, i); \
> > + spin_lock_init(lock); \
> > + } \
> > + } \
> > + static inline void name##_rlock(void) { \
> > + spinlock_t *lock; \
> > + lock = &get_cpu_var(name##_lock); \
> > + spin_lock(lock); \
> > + } \
>
> generates a definition, not a declaration. Hence DEFINE_BRLOCK.
>
> </petpeeve #29>

Well yes, but being a static inline, then I don't know of a better
way. Probably just better not to pretend we are expanding a simple
declaration here, and name it something differently? (BRLOCK_HEADER(blah))?