* Re: [KJ] using "mutexes" in place of semaphores
2007-02-17 12:48 [KJ] using "mutexes" in place of semaphores Robert P. J. Day
@ 2007-02-17 13:56 ` Arnd Bergmann
2007-02-17 13:58 ` Robert P. J. Day
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Arnd Bergmann @ 2007-02-17 13:56 UTC (permalink / raw)
To: kernel-janitors
On Saturday 17 February 2007 13:48, Robert P. J. Day wrote:
> a quick count shows that there's only a couple dozen instances of
> calling sema_init() with a count of 1, while there are many more calls
> of init_MUTEX() in the tree, suggesting that init_MUTEX() really is
> the preferred standard.
>
> thoughts? is this worth it?
I guess you missed the important point here, which is that we're also
trying to get rid of the usage of a struct semaphore as a mutex.
Basically, every instance of init_MUTEX() can (and should) be converted
to using mutex_init() on a struct mutex. Those few places that call
sema_init with a count of one are probably just a subset of these.
Similarly, most of the occurences of sema_init(sem, 0) seem to be
the kind that should be converted to 'struct completion'.
Arnd <><
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [KJ] using "mutexes" in place of semaphores
2007-02-17 12:48 [KJ] using "mutexes" in place of semaphores Robert P. J. Day
2007-02-17 13:56 ` Arnd Bergmann
@ 2007-02-17 13:58 ` Robert P. J. Day
2007-02-17 16:39 ` Robert P. J. Day
2007-02-17 18:48 ` Arnd Bergmann
3 siblings, 0 replies; 5+ messages in thread
From: Robert P. J. Day @ 2007-02-17 13:58 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1326 bytes --]
On Sat, 17 Feb 2007, Arnd Bergmann wrote:
> On Saturday 17 February 2007 13:48, Robert P. J. Day wrote:
> > a quick count shows that there's only a couple dozen instances of
> > calling sema_init() with a count of 1, while there are many more calls
> > of init_MUTEX() in the tree, suggesting that init_MUTEX() really is
> > the preferred standard.
> >
> > thoughts? is this worth it?
>
> I guess you missed the important point here, which is that we're also
> trying to get rid of the usage of a struct semaphore as a mutex.
>
> Basically, every instance of init_MUTEX() can (and should) be converted
> to using mutex_init() on a struct mutex. Those few places that call
> sema_init with a count of one are probably just a subset of these.
> Similarly, most of the occurences of sema_init(sem, 0) seem to be
> the kind that should be converted to 'struct completion'.
ah, i wasn't aware that there even *was* a "struct mutex" -- i thought
a general semaphore was used for that. thanks.
rday
--
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA
http://fsdev.net/wiki/index.php?title=Main_Page
========================================================================
[-- Attachment #2: Type: text/plain, Size: 168 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [KJ] using "mutexes" in place of semaphores
2007-02-17 12:48 [KJ] using "mutexes" in place of semaphores Robert P. J. Day
2007-02-17 13:56 ` Arnd Bergmann
2007-02-17 13:58 ` Robert P. J. Day
@ 2007-02-17 16:39 ` Robert P. J. Day
2007-02-17 18:48 ` Arnd Bergmann
3 siblings, 0 replies; 5+ messages in thread
From: Robert P. J. Day @ 2007-02-17 16:39 UTC (permalink / raw)
To: kernel-janitors
On Sat, 17 Feb 2007, Arnd Bergmann wrote:
> Basically, every instance of init_MUTEX() can (and should) be
> converted to using mutex_init() on a struct mutex. Those few places
> that call sema_init with a count of one are probably just a subset
> of these. Similarly, most of the occurences of sema_init(sem, 0)
> seem to be the kind that should be converted to 'struct completion'.
waitaminnit. you're not claiming that a currently-locked semaphore is
exactly equivalent to a completion, are you?
as i read it, calling "complete()" on a completion will wake *all*
processes waiting for that completion, no? not just one, as a
semaphore would.
so i'm assuming what you're saying is that, in many places where you
see a "sema_init(sem, 0)", it would be *appropriate* to have used a
completion instead, is that what you meant? thanks.
rday
--
====================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA
http://fsdev.net/wiki/index.php?title=Main_Page
====================================
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [KJ] using "mutexes" in place of semaphores
2007-02-17 12:48 [KJ] using "mutexes" in place of semaphores Robert P. J. Day
` (2 preceding siblings ...)
2007-02-17 16:39 ` Robert P. J. Day
@ 2007-02-17 18:48 ` Arnd Bergmann
3 siblings, 0 replies; 5+ messages in thread
From: Arnd Bergmann @ 2007-02-17 18:48 UTC (permalink / raw)
To: kernel-janitors
On Saturday 17 February 2007 17:39, Robert P. J. Day wrote:
> waitaminnit. you're not claiming that a currently-locked semaphore is
> exactly equivalent to a completion, are you?
>
> as i read it, calling "complete()" on a completion will wake *all*
> processes waiting for that completion, no? not just one, as a
> semaphore would.
>
> so i'm assuming what you're saying is that, in many places where you
> see a "sema_init(sem, 0)", it would be *appropriate* to have used a
> completion instead, is that what you meant? thanks.
>
Right, I looked at three instances where sema_init(sem, 0) was used,
and two of them use it only to do what a completion does.
Arnd <><
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 5+ messages in thread