Re: [Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-09 Thread Julien Grall
Hi, On 07/06/16 17:06, Julien Grall wrote: +#else /* !CONFIG_ALTERNATIVE */ + +static inline void apply_alternatives_all(void) +{ +} + +int apply_alternatives(void *start, size_t lenght) I have just notice a compilation issue on ARM32 with this patch which I did not spot during build testing.

Re: [Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-08 Thread Konrad Rzeszutek Wilk
On Wed, Jun 08, 2016 at 07:22:45PM +0100, Julien Grall wrote: > Hi Konrad, > > On 08/06/16 19:17, Konrad Rzeszutek Wilk wrote: > diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S > index 1f010bd..495f9d8 100644 > --- a/xen/arch/arm/xen.lds.S > +++ b/xen/arch/arm/xen.lds.

Re: [Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-08 Thread Julien Grall
Hi Konrad, On 08/06/16 19:17, Konrad Rzeszutek Wilk wrote: diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index 1f010bd..495f9d8 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -129,6 +129,9 @@ SECTIONS _sinittext = .; *(.init.text) _eini

Re: [Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-08 Thread Konrad Rzeszutek Wilk
> >>diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S > >>index 1f010bd..495f9d8 100644 > >>--- a/xen/arch/arm/xen.lds.S > >>+++ b/xen/arch/arm/xen.lds.S > >>@@ -129,6 +129,9 @@ SECTIONS > >>_sinittext = .; > >>*(.init.text) > >>_einittext = .; > >>+#ifdef CONFIG_

Re: [Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-08 Thread Julien Grall
Hi Konrad, On 07/06/2016 18:24, Konrad Rzeszutek Wilk wrote: + +/* + * We might be patching the stop_machine state machine, so implement a + * really simple polling protocol here. + */ +static int __apply_alternatives_multi_stop(void *unused) +{ +static int patched = 0; +struct alt_regio

Re: [Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-07 Thread Konrad Rzeszutek Wilk
> + > +/* > + * We might be patching the stop_machine state machine, so implement a > + * really simple polling protocol here. > + */ > +static int __apply_alternatives_multi_stop(void *unused) > +{ > +static int patched = 0; > +struct alt_region region = { > +.begin = __alt_instruc

[Xen-devel] [PATCH v3 09/16] xen/arm: Introduce alternative runtime patching

2016-06-07 Thread Julien Grall
Some of the processor erratum will require to modify code sequence. As those modifications may impact the performance, they should only be enabled on affected cores. Furthermore, Xen may also want to take advantage of new hardware features coming up with v8.1 and v8.2. This patch adds an infrastru