* Purpose of do{}while(0) in #define spin_lock_init(x) do { (x)->lock = 0; } while(0)
@ 2005-01-05 14:01 Kotian, Deepak
2005-01-05 14:14 ` Paolo Ornati
2005-01-05 14:15 ` Bernd Petrovitsch
0 siblings, 2 replies; 3+ messages in thread
From: Kotian, Deepak @ 2005-01-05 14:01 UTC (permalink / raw)
To: linux-kernel
Just for information, may be very simple.
Is there any specific reason why do{}while(0) is
there in this definition
#define spin_lock_init(x) do { (x)->lock = 0; } while(0)
What could happen if it is replaced by
#define spin_lock_init(x) { (x)->lock = 0; }
There are couple of other places, where this kind of usage
is observed in the kernel code.
Thanks and Regards
Deepak
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Purpose of do{}while(0) in #define spin_lock_init(x) do { (x)->lock = 0; } while(0)
2005-01-05 14:01 Purpose of do{}while(0) in #define spin_lock_init(x) do { (x)->lock = 0; } while(0) Kotian, Deepak
@ 2005-01-05 14:14 ` Paolo Ornati
2005-01-05 14:15 ` Bernd Petrovitsch
1 sibling, 0 replies; 3+ messages in thread
From: Paolo Ornati @ 2005-01-05 14:14 UTC (permalink / raw)
To: Kotian, Deepak; +Cc: linux-kernel
On Wed, 5 Jan 2005 19:31:44 +0530
"Kotian, Deepak" <Deepak.Kotian@patni.com> wrote:
> Is there any specific reason why do{}while(0) is
> there in this definition
> #define spin_lock_init(x) do { (x)->lock = 0; } while(0)
>
> What could happen if it is replaced by
> #define spin_lock_init(x) { (x)->lock = 0; }
>
> There are couple of other places, where this kind of usage
> is observed in the kernel code.
look at http://www.kernelnewbies.org/faq/
--
Paolo Ornati
Gentoo Linux (kernel 2.6.10-cko2)
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Purpose of do{}while(0) in #define spin_lock_init(x) do { (x)->lock = 0; } while(0)
2005-01-05 14:01 Purpose of do{}while(0) in #define spin_lock_init(x) do { (x)->lock = 0; } while(0) Kotian, Deepak
2005-01-05 14:14 ` Paolo Ornati
@ 2005-01-05 14:15 ` Bernd Petrovitsch
1 sibling, 0 replies; 3+ messages in thread
From: Bernd Petrovitsch @ 2005-01-05 14:15 UTC (permalink / raw)
To: Kotian, Deepak; +Cc: linux-kernel
On Wed, 2005-01-05 at 19:31 +0530, Kotian, Deepak wrote:
> Is there any specific reason why do{}while(0) is
> there in this definition
> #define spin_lock_init(x) do { (x)->lock = 0; } while(0)
>
> What could happen if it is replaced by
> #define spin_lock_init(x) { (x)->lock = 0; }
http://kernelnewbies.org/faq/index.php3#dowhile
Bernd
--
Firmix Software GmbH http://www.firmix.at/
mobil: +43 664 4416156 fax: +43 1 7890849-55
Embedded Linux Development and Services
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-01-05 14:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-05 14:01 Purpose of do{}while(0) in #define spin_lock_init(x) do { (x)->lock = 0; } while(0) Kotian, Deepak
2005-01-05 14:14 ` Paolo Ornati
2005-01-05 14:15 ` Bernd Petrovitsch
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®