Subject: Re: [patch 1/2] powerpc: rmb fix

From: Segher Boessenkool <[email-masked]>
Date: Wed, 22 Aug 2007 05:33:16 +0200

>> The I/O accessor functions enforce the necessary ordering
>> already I believe.
>
> Hmm, I never followed those discussions last year about IO ordering, 
> and
> I can't see where (if) it was documented anywhere :(

The comments in system.h weren't updated with the last fix, I think.

> It appears that legacy code is handled by defining the old IO 
> accessors to
> be completely ordered, and introducing new __raw_ variants that are not
> (OTOH, it seems like other architectures are implementing __raw prefix 
> as
> inorder unless there is a _relaxed postfix).

__raw_XX() is for platform code only, which can do the needed
barriers without having to use the heavy hammer like everything
else unfortunately does.

> Drivers are definitely using these __raw_ accessors, and from a quick
> look, they do appear to be hoping that *mb() is going to order access 
> for
> them.

Which drivers?

Segher