From mboxrd@z Thu Jan 1 00:00:00 1970 From: Linus Torvalds Date: Thu, 23 Aug 2007 16:14:42 +0000 Subject: Re: wmb vs mmiowb Message-Id: List-Id: References: <20070822045714.GD26374@wotan.suse.de> <200708221202.12403.jesse.barnes@intel.com> <20070823022043.GB18788@wotan.suse.de> <20070823035448.GG18788@wotan.suse.de> In-Reply-To: <20070823035448.GG18788@wotan.suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Nick Piggin Cc: linux-ia64@vger.kernel.org, Jesse Barnes , linuxppc-dev@ozlabs.org On Thu, 23 Aug 2007, Nick Piggin wrote: > > OK, but we'd have some kind of functions that are called not to > serialise the CPUs, but to serialise the IO. It would be up to > the calling code to already provide CPU synchronisation. > > serialize_io(); / unserialize_io(); / a nicer name We could call it "mmiowb()", for example? Radical idea, I know. > If we could pass in some kind of relevant resoure (eg. the IO > memory or device or something), then we might even be able to > put debug checks there to ensure two CPUs are never inside the > same critical IO section at once. We could certainly give it the spinlock as an argument. Linus