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

Re: [Xen-devel] [PATCH for-4.5] xen/arm: Correct the opcode for BUG_INSTR on arm32



On Thu, Dec 04, 2014 at 07:26:55PM +0000, Julien Grall wrote:
> A 0 was forgotten when the arm32 BUG instruction opcode has been added in 
> commit
> 3e802c6ca1fb9a9549258c2855a57cad483f3cbd "xen/arm: Correctly support WARN_ON".
> 
> This will result to use a valid instruction (mcreq 0, 3, r0, cr15, cr0, {7}),
> and inhibit usage of BUG/WARN_ON and co.
> 
> Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
> 
> ---
> 
> Not sure, why I dropped the 0 when I implemented the patch...
> This is a bug fixed for Xen 4.5. This is only affected ARM32 where the
> BUG opcode was malformed.
> 
> With the malformed opcode, the ASSERT/BUG_ON is skipped and the
> processor may execute another patch (because the compiler has optimized

s/patch/path/ ?

> due the unreachable in both macro).
> 
> The code modified is only executed when Xen is in bad state.

Release-Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> 

> ---
>  xen/include/asm-arm/arm32/bug.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/asm-arm/arm32/bug.h b/xen/include/asm-arm/arm32/bug.h
> index 155b420..3e66f35 100644
> --- a/xen/include/asm-arm/arm32/bug.h
> +++ b/xen/include/asm-arm/arm32/bug.h
> @@ -6,7 +6,7 @@
>  /* ARMv7 provides a list of undefined opcode (see A8.8.247 DDI 0406C.b)
>   * Use one them encoding A1 to go in exception mode
>   */
> -#define BUG_OPCODE  0xe7f00f0
> +#define BUG_OPCODE  0xe7f000f0
>  
>  #define BUG_INSTR ".word " __stringify(BUG_OPCODE)
>  
> -- 
> 2.1.3
> 

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