Re: [PATCH-RFC 2/2] eventfd: EFD_STATE flag

From: Avi Kivity
Date: Tue Aug 04 2009 - 05:12:34 EST


On 08/04/2009 11:54 AM, Michael S. Tsirkin wrote:
On Tue, Aug 04, 2009 at 11:53:03AM +0300, Avi Kivity wrote:
On 08/03/2009 07:57 PM, Michael S. Tsirkin wrote:
Why not do it at the point of the write?

if (value != ctx->count) {
ctx->count = value;
wake_things_up();
}

What if write comes before read?

The read will get the new value.

Yes :) But how does read know it should not block?

If a different read comes after the write but after our read, it will have transferred the value, resulting in the same situation.

I think reads should never block with a state based mechanism.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/