[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9E0BE1322F2F2246BD820DA9FC397ADE014EBF6B@SHSMSX102.ccr.corp.intel.com>
Date: Wed, 22 Jan 2014 08:51:14 +0000
From: "Ren, Qiaowei" <qiaowei.ren@...el.com>
To: David Rientjes <rientjes@...gle.com>
CC: "H. Peter Anvin" <hpa@...or.com>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"x86@...nel.org" <x86@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v2 0/4] Intel MPX support
> -----Original Message-----
> From: David Rientjes [mailto:rientjes@...gle.com]
> Sent: Wednesday, January 22, 2014 4:01 PM
> To: Ren, Qiaowei
> Cc: H. Peter Anvin; Thomas Gleixner; Ingo Molnar; x86@...nel.org;
> linux-kernel@...r.kernel.org
> Subject: Re: [PATCH v2 0/4] Intel MPX support
>
> On Wed, 22 Jan 2014, Qiaowei Ren wrote:
>
> > Changes since v1:
> > * check to see if #BR occurred in userspace or kernel space.
> > * use generic structure and macro as much as possible when
> > decode mpx instructions.
> >
> > Qiaowei Ren (4):
> > x86, mpx: add documentation on Intel MPX
> > x86, mpx: hook #BR exception handler to allocate bound tables
> > x86, mpx: add prctl commands PR_MPX_INIT, PR_MPX_RELEASE
> > x86, mpx: extend siginfo structure to include bound violation
> > information
> >
> > Documentation/x86/intel_mpx.txt | 76 +++++++
> > arch/x86/Kconfig | 4 +
> > arch/x86/include/asm/mpx.h | 63 ++++++
> > arch/x86/include/asm/processor.h | 16 ++
> > arch/x86/kernel/Makefile | 1 +
> > arch/x86/kernel/mpx.c | 417
> ++++++++++++++++++++++++++++++++++++
> > arch/x86/kernel/traps.c | 61 +++++-
> > include/uapi/asm-generic/siginfo.h | 9 +-
> > include/uapi/linux/prctl.h | 6 +
> > kernel/signal.c | 4 +
> > kernel/sys.c | 12 +
> > 11 files changed, 667 insertions(+), 2 deletions(-) create mode
> > 100644 Documentation/x86/intel_mpx.txt create mode 100644
> > arch/x86/include/asm/mpx.h create mode 100644 arch/x86/kernel/mpx.c
> >
>
> There's compiler warnings spread amongst the various patches with x86_64
> defconfig:
>
> arch/x86/kernel/mpx.c: In function ‘do_mpx_bounds’:
> arch/x86/kernel/mpx.c:415:2: warning: format ‘%lx’ expects argument of
> type ‘long unsigned int’, but argument 3 has type ‘void *’ [-Wformat]
> arch/x86/kernel/mpx.c:415:2: warning: format ‘%lx’ expects argument of
> type ‘long unsigned int’, but argument 4 has type ‘void *’ [-Wformat]
> arch/x86/kernel/mpx.c: In function ‘do_mpx_bt_fault’:
> arch/x86/kernel/mpx.c:373:5: warning: ‘old_val’ may be used uninitialized in
> this function [-Wuninitialized]
> arch/x86/kernel/mpx.c:360:25: note: ‘old_val’ was declared here
>
I will fix these warnings.
old_val will be set by user_atomic_cmpxchg_inatomic().
> and I had to resolve the second patch manually because of "x86/traps:
> Clean up error exception handler definitions" in the x86 tree.
>
There is a conflict with latest kernel. I just fixed it and built successfully.
> With 32-bit, we get casting warnings:
>
> arch/x86/kernel/mpx.c: In function ‘do_mpx_bounds’:
> arch/x86/kernel/mpx.c:407:3: warning: cast to pointer from integer of different
> size [-Wint-to-pointer-cast]
> arch/x86/kernel/mpx.c:409:3: warning: cast to pointer from integer of different
> size [-Wint-to-pointer-cast]
>
> and I'm pretty sure you want this to be available for such a config.
>
> There's also whitespace in the fourth patch.
Thanks much for your feedback.
Qiaowei
Powered by blists - more mailing lists