* Re: [PATCH v3 6/9] x86: prevent inline distortion by paravirt ops
[not found] ` <20180610141911.52948-7-namit@vmware.com>
@ 2018-06-11 7:45 ` Peter Zijlstra
0 siblings, 0 replies; only message in thread
From: Peter Zijlstra @ 2018-06-11 7:45 UTC (permalink / raw)
To: Nadav Amit
Cc: Juergen Gross, x86, linux-kernel, virtualization, Ingo Molnar,
H. Peter Anvin, Alok Kataria, Thomas Gleixner
On Sun, Jun 10, 2018 at 07:19:08AM -0700, Nadav Amit wrote:
> +/*
> + * This generates an indirect call based on the operation type number.
> + * The type number, computed in PARAVIRT_PATCH, is derived from the
> + * offset into the paravirt_patch_template structure, and can therefore be
> + * freely converted back into a structure offset.
> + */
> +.macro PARAVIRT_ALT type:req clobber:req pv_opptr:req
Unlike the marcro maze you replaced, this has the CALL hardcoded in. So
maybe name this PARAVIRT_CALL instead of PARAVIRT_ALT ?
> +771: ANNOTATE_RETPOLINE_SAFE
> + call *\pv_opptr
> +772: .pushsection .parainstructions,"a"
> + _ASM_ALIGN
> + _ASM_PTR 771b
> + .byte \type
> + .byte 772b-771b
> + .short \clobber
> + .popsection
> +.endm
^ permalink raw reply [flat|nested] only message in thread