Commit-ID:  a6400120d042397675fcf694060779d21e9e762d
Gitweb:     https://git.kernel.org/tip/a6400120d042397675fcf694060779d21e9e762d
Author:     Dave Hansen <[email protected]>
AuthorDate: Fri, 10 Nov 2017 16:12:29 -0800
Committer:  Ingo Molnar <[email protected]>
CommitDate: Tue, 21 Nov 2017 09:34:52 +0100

x86/mpx/selftests: Fix up weird arrays

The MPX hardware data structurse are defined in a weird way: they define
their size in bytes and then union that with the type with which we want
to access them.

Yes, this is weird, but it does work.  But, new GCC's complain that we
are accessing the array out of bounds.  Just make it a zero-sized array
so gcc will stop complaining.  There was not really a bug here.

Signed-off-by: Dave Hansen <[email protected]>
Acked-by: Thomas Gleixner <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Brian Gerst <[email protected]>
Cc: Denys Vlasenko <[email protected]>
Cc: H. Peter Anvin <[email protected]>
Cc: Josh Poimboeuf <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
---
 tools/testing/selftests/x86/mpx-hw.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/x86/mpx-hw.h 
b/tools/testing/selftests/x86/mpx-hw.h
index 3f00939..d1b61ab 100644
--- a/tools/testing/selftests/x86/mpx-hw.h
+++ b/tools/testing/selftests/x86/mpx-hw.h
@@ -52,14 +52,14 @@
 struct mpx_bd_entry {
        union {
                char x[MPX_BOUNDS_DIR_ENTRY_SIZE_BYTES];
-               void *contents[1];
+               void *contents[0];
        };
 } __attribute__((packed));
 
 struct mpx_bt_entry {
        union {
                char x[MPX_BOUNDS_TABLE_ENTRY_SIZE_BYTES];
-               unsigned long contents[1];
+               unsigned long contents[0];
        };
 } __attribute__((packed));
 

Reply via email to