[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1370337866.24512.90.camel@zakaz.uk.xensource.com>
Date: Tue, 4 Jun 2013 10:24:26 +0100
From: Ian Campbell <Ian.Campbell@...rix.com>
To: Stefano Stabellini <stefano.stabellini@...citrix.com>
CC: <linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <xen-devel@...ts.xensource.com>,
<will.deacon@....com>, <catalin.marinas@....com>,
<konrad.wilk@...cle.com>
Subject: Re: [PATCH v2 2/5] arm64/xen: introduce asm/xen header files on
arm64
On Mon, 2013-06-03 at 16:33 +0100, Stefano Stabellini wrote:
> asm/xen/hypercall.h, asm/xen/hypervisor.h, asm/xen/interface.h and
> asm/xen/page.h are indentical so to avoid code duplication we are just
"identical"
> including the original arm header files here.
>
> asm/xen/events.h is slightly different, so introduce a different file
> here (use xchg to implement xchg_xen_ulong and pass regs->pstate to
> raw_irqs_disabled_flags).
>
> Also introduce asm/hypervisor.h and asm/sync_bitops.h.
>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@...citrix.com>
Acked-by: Ian Campbell <ian.campbell@...rix.com>
[...]
> +/* sync_bitops functions are equivalent to the SMP implementation of the
> + * original functions, independently from CONFIG_SMP being defined.
> + *
> + * We need them because _set_bit etc are not SMP safe if !CONFIG_SMP. But
> + * under Xen you might be communicating with a completely external entity
> + * who might be on another CPU (e.g. two uniprocessor guests communicating
> + * via event channels and grant tables). So we need a variant of the bit
> + * ops which are SMP safe even on a UP kernel.
> + */
> +
> +#define sync_set_bit(nr, p) set_bit(nr, p)
Oh, arm64 seems to have optimised bitops now, which means I can ditch
the skanky versions in Xen in favour of these. Nice.
Ian.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists