On 26.11.2021 17:37, Andrew Cooper wrote:
> --- a/xen/arch/x86/extable.c
> +++ b/xen/arch/x86/extable.c
> @@ -129,19 +129,23 @@ search_exception_table(const struct cpu_user_regs *regs)
>  static int __init cf_check stub_selftest(void)
>  {
>      static const struct {
> -        uint8_t opc[4];
> +        uint8_t opc[8];
>          uint64_t rax;
>          union stub_exception_token res;
>      } tests[] __initconst = {
> -        { .opc = { 0x0f, 0xb9, 0xc3, 0xc3 }, /* ud1 */
> +        { .opc = { 0xf3, 0x0f, 0x1e, 0xfa,   /* endbr64 */
> +                   0x0f, 0xb9, 0xc3, 0xc3 }, /* ud1 */
>            .res.fields.trapnr = TRAP_invalid_op },
> -        { .opc = { 0x90, 0x02, 0x00, 0xc3 }, /* nop; add (%rax),%al */
> +        { .opc = { 0xf3, 0x0f, 0x1e, 0xfa,   /* endbr64 */
> +                   0x90, 0x02, 0x00, 0xc3 }, /* nop; add (%rax),%al */
>            .rax = 0x0123456789abcdef,
>            .res.fields.trapnr = TRAP_gp_fault },
> -        { .opc = { 0x02, 0x04, 0x04, 0xc3 }, /* add (%rsp,%rax),%al */
> +        { .opc = { 0xf3, 0x0f, 0x1e, 0xfa,   /* endbr64 */
> +                   0x02, 0x04, 0x04, 0xc3 }, /* add (%rsp,%rax),%al */
>            .rax = 0xfedcba9876543210,
>            .res.fields.trapnr = TRAP_stack_error },
> -        { .opc = { 0xcc, 0xc3, 0xc3, 0xc3 }, /* int3 */
> +        { .opc = { 0xf3, 0x0f, 0x1e, 0xfa,   /* endbr64 */
> +                   0xcc, 0xc3, 0xc3, 0xc3 }, /* int3 */
>            .res.fields.trapnr = TRAP_int3 },
>      };

Instead of the recurring hex values followed by the /* endbr64 */ comment,
how about having a local #define for this? Preferably with such a change
Reviewed-by: Jan Beulich <jbeul...@suse.com>

Jan


Reply via email to