lkml.org 
[lkml]   [2006]   [Feb]   [25]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
FromAndi Kleen <>
SubjectRe: [PATCH] Define wc_wmb, a write barrier for PCI write combining
DateSat, 25 Feb 2006 14:28:01 +0100
On Saturday 25 February 2006 08:34, Bryan O'Sullivan wrote:
> On Sat, 2006-02-25 at 05:43 +0100, Andi Kleen wrote:
> > On Saturday 25 February 2006 05:20, Bryan O'Sullivan wrote:
> > > On some platforms, a regular wmb() is not sufficient to guarantee that
> > > PCI writes have been flushed to the bus if write combining is in
> > > effect.
> >
> > On what platforms?
>
> On x86_64 in particular, if CONFIG_UNORDERED_IO is defined. 

I guess you mean undefined.

> Regular 
> wmb() is implemented as a compiler memory barrier then, which isn't
> sufficient for PCI write combining.

It's still totally unclear how you can write portable write combining code.

I think the basic idea is weird. You're basically writing something
that doesn't follow the normal MMIO rules of Linux drivers and you're 
trying to do this portable, which won't work anyways because 
there is no portable way to do this.

Before we can add such a macro I suspect you would first 
need to provide some spec how that "portable write combining"
is supposed to work and get feedback from the other architectures.

Or keep it in architecture specific code, then the generic macro
isn't needed.

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

\
 
 \ /
  Last update: 2006-02-25 14:29    [from the cache]
©2003-2008