Messages in this thread | | | Date | Wed, 1 Mar 2006 15:26:34 -0500 | From | Benjamin LaHaise <> | Subject | Re: [PATCH] Define wc_wmb, a write barrier for PCI write combining |
| |
On Wed, Mar 01, 2006 at 12:05:07PM -0800, Bryan O'Sullivan wrote: > This section also makes it clear yet again that wmb() is absolutely not > sufficient to get program store order semantics in the presence of WC; > you *have* to use an explicit synchronising instruction of some kind.
The semantics your code seems to care about are not those of a memory barrier (which deals with ordering), but of a flush of the write combining buffers. That's an important high level distinction as they are implemented differently across architectures. Please rename the macro something like flush_wc() and document it as such, at which point I remove my objection.
-ben -- "Ladies and gentlemen, I'm sorry to interrupt, but the police are here and they've asked us to stop the party." Don't Email: <dont@kvack.org>. - 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/
| |