Re: Fix unlock_buffer() to work the same way as bit_unlock()

From: Nick Piggin <nickpiggin_at_yahoo.com.au>
Date: 2006-03-30 19:55:52
Zoltan Menyhart wrote:

> However, I do not think your implementation would be efficient due to
> selecting the ordering mode at run time:
> 
>> +    switch (mode) {
>> +    case MODE_NONE :
>> +    case MODE_ACQUIRE :
>> +        return cmpxchg_acq(m, old, new);
>> +    case MODE_FENCE :
>> +        smp_mb();
>> +        /* Fall through */
>> +    case MODE_RELEASE :
>> +        return cmpxchg_rel(m, old, new);
> 

BTW. Isn't MODE_FENCE wrong? Seems like a read or write could be moved
above cmpxchg_rel?

I think you need rel+acq rather than acq+rel (if I'm right, then the
same goes for your earlier bitops patches, btw).

-- 
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com 

-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Fri Mar 31 06:05:00 2006

This archive was generated by hypermail 2.1.8 : 2006-03-31 06:05:15 EST