RE: Synchronizing Bit operations V2

From: Chen, Kenneth W
Date: Fri Mar 31 2006 - 01:12:16 EST


Nick Piggin wrote on Thursday, March 30, 2006 6:53 PM
> >>smp_mb__before_clear_bit()
> >>clear_bit(...)(
> >
> > Sorry, you totally lost me. It could me I'm extremely slow today. For
> > option (1), on ia64, clear_bit has release semantic already. The comb
> > of __before_clear_bit + clear_bit provides the required ordering. Did
> > I miss something? By the way, we are talking about detail implementation
> > on one specific architecture. Not some generic concept that clear_bit
> > has no ordering stuff in there.
> >
>
> The memory ordering that above combination should produce is a
> Linux style smp_mb before the clear_bit. Not a release.

Whoever designed the smp_mb_before/after_* clearly understand the
difference between a bidirectional smp_mb() and a one-way memory
ordering. If smp_mb_before/after are equivalent to smp_mb, what's
the point of introducing another interface?

- Ken
-
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/