diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2022-03-21 21:28:24 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2022-03-21 21:28:24 +0300 |
commit | 35cbdaf75394e1061a9bd64b4698915c6db58512 (patch) | |
tree | bc29ae4c2f8d8187483efcd2fb9d3e7bf7232db1 /arch | |
parent | e10821b8a0350530bedcbe725c030ecfe5bd08c2 (diff) | |
parent | 2e1f8e55f9e054b4a49ffc06c7e33b5d4725f05e (diff) | |
download | linux-35cbdaf75394e1061a9bd64b4698915c6db58512.tar.xz |
Merge tag 'x86_paravirt_for_v5.18_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 paravirt improvement from Borislav Petkov:
- Shorten CALL insns to pvops by a byte by using rip-relative
addressing
* tag 'x86_paravirt_for_v5.18_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/paravirt: Use %rip-relative addressing in hook calls
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/include/asm/paravirt_types.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h index a69012e1903f..e1591467668e 100644 --- a/arch/x86/include/asm/paravirt_types.h +++ b/arch/x86/include/asm/paravirt_types.h @@ -279,7 +279,7 @@ extern void (*paravirt_iret)(void); #define paravirt_type(op) \ [paravirt_typenum] "i" (PARAVIRT_PATCH(op)), \ - [paravirt_opptr] "i" (&(pv_ops.op)) + [paravirt_opptr] "m" (pv_ops.op) #define paravirt_clobber(clobber) \ [paravirt_clobber] "i" (clobber) @@ -316,7 +316,7 @@ int paravirt_disable_iospace(void); */ #define PARAVIRT_CALL \ ANNOTATE_RETPOLINE_SAFE \ - "call *%c[paravirt_opptr];" + "call *%[paravirt_opptr];" /* * These macros are intended to wrap calls through one of the paravirt |