[lkml]   [2020]   [Jan]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
SubjectRe: [PATCH 0/3] [RFC] x86: start the MPX removal process
On Wed, Jan 22, 2020 at 10:14:58AM -0800, Dave Hansen wrote:
> Here's an updated tree:
> Very lightly tested.


So I merged tip/master into it and did some build smoke testing. The
only issue I found is below which happens with an allnoconfig build and
the fix is simple:

diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
index 34360ca301a2..e8133c0e7799 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -21,6 +21,7 @@
#include <asm/pgtable.h>
#include <asm/mce.h>
#include <asm/nmi.h>
+#include <asm/insn.h>
#include <asm/cacheflush.h>
#include <asm/tlbflush.h>
#include <asm/io.h>
as apparently the include hell needs to be satisfied again. :)

You could fold it into one of your 4 patches so that you don't break
bisection and then either send the pull request directly to Linus next
week or I can do that - I'm fine with either.

Provided, of course, there are no other complaints.


arch/x86/kernel/alternative.c: In function ‘text_poke_loc_init’:
arch/x86/kernel/alternative.c:1172:14: error: storage size of ‘insn’ isn’t known
1172 | struct insn insn;
| ^~~~
arch/x86/kernel/alternative.c:1178:2: error: implicit declaration of function ‘kernel_insn_init’; did you mean ‘kernfs_init’? [-Werror=implicit-function-declaration]
1178 | kernel_insn_init(&insn, emulate, MAX_INSN_SIZE);
| ^~~~~~~~~~~~~~~~
| kernfs_init
arch/x86/kernel/alternative.c:1178:35: error: ‘MAX_INSN_SIZE’ undeclared (first use in this function); did you mean ‘CALL_INSN_SIZE’?
1178 | kernel_insn_init(&insn, emulate, MAX_INSN_SIZE);
| ^~~~~~~~~~~~~
arch/x86/kernel/alternative.c:1178:35: note: each undeclared identifier is reported only once for each function it appears in
arch/x86/kernel/alternative.c:1179:2: error: implicit declaration of function ‘insn_get_length’ [-Werror=implicit-function-declaration]
1179 | insn_get_length(&insn);
| ^~~~~~~~~~~~~~~
In file included from ./include/linux/export.h:43,
from ./include/linux/linkage.h:7,
from ./include/linux/kernel.h:8,
from ./include/linux/list.h:9,
from ./include/linux/module.h:12,
from arch/x86/kernel/alternative.c:4:
arch/x86/kernel/alternative.c:1181:10: error: implicit declaration of function ‘insn_complete’; did you mean ‘complete’? [-Werror=implicit-function-declaration]
1181 | BUG_ON(!insn_complete(&insn));
| ^~~~~~~~~~~~~
./include/linux/compiler.h:78:42: note: in definition of macro ‘unlikely’
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
arch/x86/kernel/alternative.c:1181:2: note: in expansion of macro ‘BUG_ON’
1181 | BUG_ON(!insn_complete(&insn));
| ^~~~~~
arch/x86/kernel/alternative.c:1172:14: warning: unused variable ‘insn’ [-Wunused-variable]
1172 | struct insn insn;
| ^~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/ arch/x86/kernel/alternative.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [scripts/ arch/x86/kernel] Error 2
make: *** [Makefile:1694: arch/x86] Error 2
make: *** Waiting for unfinished jobs....


 \ /
  Last update: 2020-01-23 12:24    [W:0.053 / U:0.148 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site