lkml.org 
[lkml]   [2008]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/2] klist: implement KLIST_INIT() and DEFINE_KLIST()
From
Date
On Tue, 2008-04-22 at 22:03 +0900, Tejun Heo wrote:
> Peter Zijlstra wrote:
> > On Tue, 2008-04-22 at 18:57 +0900, Tejun Heo wrote:
> >> klist is missing static initializers and definition helper. Add them.
> >>
> >> Signed-off-by: Tejun Heo <htejun@gmail.com>
> >> ---
> >> I can't tell who's in charge of this code, so I'm including last two
> >> people who made changes and Andrew :-) This will be used by later USB
> >> mode switch support, so I'm cc'ing USB people too.
> >>
> >> Thanks.
> >>
> >> include/linux/klist.h | 8 ++++++++
> >> 1 files changed, 8 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/include/linux/klist.h b/include/linux/klist.h
> >> index 7407125..c6b697c 100644
> >> --- a/include/linux/klist.h
> >> +++ b/include/linux/klist.h
> >> @@ -25,6 +25,14 @@ struct klist {
> >> void (*put)(struct klist_node *);
> >> };
> >>
> >> +#define KLIST_INIT(_name, _get, _put) \
> >> + { .k_lock = __SPIN_LOCK_UNLOCKED(klist.k_lock), \
> >
> > May I ask you make that: __SPIN_LOCK_UNLOCKED(_name.k_lock)
> >
> > Otherwise we'll end up with multiple classes that have the same name.
>
> These locks don't nest so being in the same class should be okay and I
> was following what (at least some of) other __SPIN_LOCK_UNLOCKED users
> are doing. If putting these locks into separate classes is the RTTD, sure.

Ah, they'll actually be in seprate classes all of the same name. So I
think it is cleaner to cause them to have separate names too.

see look_up_lock_class() in kernel/lockdep.c:

/*
* Static locks do not have their class-keys yet - for them the key
* is the lock object itself:
*/
if (unlikely(!lock->key))
lock->key = (void *)lock;




\
 
 \ /
  Last update: 2008-04-22 15:11    [W:0.174 / U:1.188 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site