All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.