Port-i386 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: [patch] x86_*fence replaced by membar_ops(3)

On Thu, Jan 15, 2009 at 03:13:59PM +0100, Jean-Yves Migeon wrote:
> >>What should I do? Drop it for the x86 generic bus code, and keep it for 
> >>the Xen drivers?
> >
> >No, membar_ops won't work for bus_dma/bus_space either. membar_ops are 
> >patched
> >to be NOP on UP kernels, still they're needed for interfaces with 
> >devices.
> Hmm, I was not really clear on that one: I just meant to keep the 
> membar_ops(3) routines for the xennet, xbd and xencons drivers: since we 
> do not patch the LOCK prefix for UP Xen domains, they are close to the 
> x86_*fence() ones.

Actually yes; but we'll probably want to use x86_patch() in the future.

> I will just handle it the other way around. I'll keep the x86 MD fences 
> and replace the ones inside Xen with their xen_[rw]mb() equivalents.
> Any consideration on this one though:
> http://www.netbsd.org/~jym/if_xennet_xenbus.c.diff
> Is it really needed to have load-before-load ordering here? If we issue 
> the hypercall, that will be a barrier anyway, and the RING macros from 
> Xen do implement barrier for notify, so...

you're right, this barrier is not needed.

Manuel Bouyer, LIP6, Universite Paris VI.           
     NetBSD: 26 ans d'experience feront toujours la difference

Home | Main Index | Thread Index | Old Index