Re: [PATCH 1/2 v8] powerpc: introduce macro spin_event_timeout()
From: Timur Tabi <hidden>
Date: 2009-05-26 17:06:09
From: Timur Tabi <hidden>
Date: 2009-05-26 17:06:09
Geoff Thorpe wrote:
So from this user's perspective (FWIW), it would come as a surprise if the return value reflected the evaluated expression rather than what happened w.r.t. the spin/timeout.
It shouldn't come as a surprise because I've thoroughly documented the behavior. I also think returning the actual value of the expression is better than a return code. Remember, the primary purpose of this macro is to wait for a hardware register to change. Contrast this to wait_event_xxx, which usually queries a variable. Therefore, the hardware register may set multiple bits. For instance, you could do this: ret = spin_event_timeout(in_be32(x) & 0x14, ...); if (ret & 0x10) do something here if (ret & 0x04) do something else here I think the ability to do this is more important than making the code as similar as possible to wait_event_xxx. -- Timur Tabi Linux kernel developer at Freescale