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

Re: [Xen-devel] [PATCH 04/13] xen: sync public headers



On Fri, 2013-02-08 at 19:45 +0000, David Vrabel wrote:
> On 08/02/13 17:09, Ian Campbell wrote:
> > 
> > Actually, Stefano and I were discussing this the other day, the use of
> > unsigned long in the evtchn stuff on ARM32 is a 32/64 ABI snafu and
> > should be fixed -- using xen_ulong_t would fix this too...
> 
> Keep in mind that it must be possible to do an atomic xchg() on the
> vcpu_info's evtchn_pending_sel word.  I don't think 64-bit words will
> work with a 32-bit ARM guest.

ARM (at least the variants we care about) has load/store exclusive,
including a double word sized option (ldrexd/strexd), so this is fine.

I think the double word variants were introduced along with LPAE, so you
can update a PTE atomically.

I also suspect it would be fine to treat a 64-bit word as two
independent 32-bit halves which must be accessed atomically, at least
for the purposes of updating the pending sel word(assumnig h/v and guest
agree on this), but thankfully due to the above I don't have to think
about it *too* hard to be sure ;-)

Ian.




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.