Re: [PATCH v9 15/18] arm64: kexec: kexec EL2 vectors

From: Pavel Tatashin
Date: Mon Jan 25 2021 - 14:39:17 EST


> > +.macro el1_sync_64
> > + br x4 /* Jump to new world from el2 */
> > + .fill 31, 4, 0 /* Set other 31 instr to zeroes */
> > +.endm
>
> The common idiom to write this is to align the beginning of the
> macro, and not to bother about what follows:
>
> .macro whatever
> .align 7
> br x4
> .endm
>
> Specially given that 0 is an undefined instruction, and I really hate to
> see
> those in the actual text. On the contrary, .align generates NOPs.

Fixed that.

>
> > +
> > +.macro invalid_vector label
> > +\label:
> > + b \label
> > + .fill 31, 4, 0 /* Set other 31 instr to zeroes */
> > +.endm
> > +
> > +/* el2 vectors - switch el2 here while we restore the memory image. */
> > + .align 11
> > +ENTRY(kexec_el2_vectors)
>
> Please see commit 617a2f392c92 ("arm64: kvm: Annotate assembly using
> modern
> annoations"), and follow the same pattern.

Fixed that as well.

Thank you,
Pasha