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

Re: [Xen-devel] [PATCH V2] xen/arm64: Assembly optimized bitops from Linux



At 10:34 +0100 on 05 Jun (1370428495), Ian Campbell wrote:
> This patch replaces the previous hashed lock implementaiton of bitops with
> assembly optimized ones taken from Linux v3.10-rc4.
> 
> The Linux derived ASM only supports 8 byte aligned bitmaps (which under Linux
> are unsigned long * rather than our void *). We do have actually uses of 4
> byte alignment (i.e. the bitmaps in struct xmem_pool) which trigger alignment
> faults.
> 
> Therefore adjust the assembly to work in 4 byte increments, which involved:
>     - bit offset now bits 4:0 => mask #31 not #63
>     - use wN register not xN for load/modify/store loop.
> 
> There is no need to adjust the shift used to calculate the word offset, the
> difference is already acounted for in the #63->#31 change.
> 
> NB: Xen's build system cannot cope with the change from .c to .S file,
> remove xen/arch/arm/arm64/lib/.bitops.o.d or clean your build tree.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

Acked-by: Tim Deegan <tim@xxxxxxx>

_______________________________________________
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®.