mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH -tip] x86/fpu: Shrink space allocated for xstate_comp_offsets
@ 2019-11-01 12:42 Cyrill Gorcunov
  2019-11-04 21:14 ` [tip: x86/fpu] " tip-bot2 for Cyrill Gorcunov
  0 siblings, 1 reply; 2+ messages in thread
From: Cyrill Gorcunov @ 2019-11-01 12:42 UTC (permalink / raw)
  To: LKML, X86-ML; +Cc: Ingo Molnar, Thomas Gleixner, H. Peter Anvin

In the commit 8ff925e10f2c72680918b95173ef4f8bb982d59e up to 64 entries
are allocated for xstate_comp_offsets while we only handle XFEATURE_MAX
entries. For this reason xstate_offsets and xstate_sizes already defined
with the explicit limit. Lets do the same for compressed format for
consistency sake.

Actually I guess the main idea was to cover all possible bits in
xfeatures_mask but this doesn't explain why other members such as
standart offsets and sizes were not using the same. So I think better
to use known XFEATURE_MAX limit everywhere and extend it on demand
when new features get implemented on hardware level.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
CC: Ingo Molnar <mingo@kernel.org>
CC: Thomas Gleixner <tglx@linutronix.de>
CC: H. Peter Anvin <hpa@zytor.com>
---
 arch/x86/kernel/fpu/xstate.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Index: linux-tip.git/arch/x86/kernel/fpu/xstate.c
===================================================================
--- linux-tip.git.orig/arch/x86/kernel/fpu/xstate.c
+++ linux-tip.git/arch/x86/kernel/fpu/xstate.c
@@ -60,7 +60,7 @@ u64 xfeatures_mask __read_mostly;
 
 static unsigned int xstate_offsets[XFEATURE_MAX] = { [ 0 ... XFEATURE_MAX - 1] = -1};
 static unsigned int xstate_sizes[XFEATURE_MAX]   = { [ 0 ... XFEATURE_MAX - 1] = -1};
-static unsigned int xstate_comp_offsets[sizeof(xfeatures_mask)*8];
+static unsigned int xstate_comp_offsets[XFEATURE_MAX] = { [ 0 ... XFEATURE_MAX - 1] = -1};
 
 /*
  * The XSAVE area of kernel can be in standard or compacted format;
@@ -342,7 +342,7 @@ static int xfeature_is_aligned(int xfeat
  */
 static void __init setup_xstate_comp(void)
 {
-	unsigned int xstate_comp_sizes[sizeof(xfeatures_mask)*8];
+	unsigned int xstate_comp_sizes[XFEATURE_MAX];
 	int i;
 
 	/*

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-11-04 21:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-01 12:42 [PATCH -tip] x86/fpu: Shrink space allocated for xstate_comp_offsets Cyrill Gorcunov
2019-11-04 21:14 ` [tip: x86/fpu] " tip-bot2 for Cyrill Gorcunov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®