On 14/04/2022 15:39, Sean Christopherson wrote:
On Thu, Apr 14, 2022, Colin Ian King wrote:
Don't populate the read-only array vmx_uret_msrs_list on the stack
but instead make it static. Also makes the object code a little smaller.
Why not put it on the stack? It's an __init function, i.e. called once in the
lifetime of kvm-intel.ko, isn't all that big, and is certainly not performance
critical. And making it static begs the question of whether or not the data gets
thrown away after init, i.e. this might consume _more_ memory once KVM has reached
steady state.
Doh, my bad, I forgot to check that it was an __init function. Please
discard this patch.
Colin
Signed-off-by: Colin Ian King <colin.i.king@xxxxxxxxx>
---
arch/x86/kvm/vmx/vmx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index c654c9d76e09..36429e2bb918 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -7871,7 +7871,7 @@ static __init void vmx_setup_user_return_msrs(void)
* but is never loaded into hardware. MSR_CSTAR is also never loaded
* into hardware and is here purely for emulation purposes.
*/
- const u32 vmx_uret_msrs_list[] = {
+ static const u32 vmx_uret_msrs_list[] = {
#ifdef CONFIG_X86_64
MSR_SYSCALL_MASK, MSR_LSTAR, MSR_CSTAR,
#endif
--
2.35.1