From: "Ren, Qiaowei" <qiaowei.ren@intel.com>
To: "Hansen, Dave" <dave.hansen@intel.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>
Cc: "x86@kernel.org" <x86@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-mm@kvack.org" <linux-mm@kvack.org>
Subject: RE: [PATCH v7 03/10] x86, mpx: add macro cpu_has_mpx
Date: Wed, 23 Jul 2014 02:35:42 +0000 [thread overview]
Message-ID: <9E0BE1322F2F2246BD820DA9FC397ADE0170079E@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <53CE8EEC.2090402@intel.com>
On 2014-07-23, Hansen, Dave wrote:
> On 07/20/2014 10:38 PM, Qiaowei Ren wrote:
>> +#ifdef CONFIG_X86_INTEL_MPX
>> +#define cpu_has_mpx boot_cpu_has(X86_FEATURE_MPX) #else #define
>> +cpu_has_mpx 0 #endif /* CONFIG_X86_INTEL_MPX */
>
> Is this enough checking? Looking at the extension reference, it says:
>
>> 9.3.3 Enabling of Intel MPX States An OS can enable Intel MPX states to
>> support software operation using bounds registers with the following
>> steps: * Verify the processor supports XSAVE/XRSTOR/XSETBV/XGETBV
>> instructions and XCR0 by checking CPUID.1.ECX.XSAVE[bit 26]=1.
>
> That, I assume the xsave code is already doing.
>
>> * Verify the processor supports both Intel MPX states by checking
> CPUID.(EAX=0x0D, ECX=0):EAX[4:3] is 11b.
>
> I see these bits _attempting_ to get set in pcntxt_mask via XCNTXT_MASK.
> But, I don't see us ever actually checking that they _do_ get set.
> For instance, we do this for:
>
>> if ((pcntxt_mask & XSTATE_FPSSE) != XSTATE_FPSSE) {
>> pr_err("FP/SSE not shown under xsave features
> 0x%llx\n",
>> pcntxt_mask);
>> BUG();
>> }
The checking about MPX feature should be as follow:
if (pcntxt_mask & XSTATE_EAGER) {
if (eagerfpu == DISABLE) {
pr_err("eagerfpu not present, disabling some xstate features: 0x%llx\n",
pcntxt_mask & XSTATE_EAGER);
pcntxt_mask &= ~XSTATE_EAGER;
} else {
eagerfpu = ENABLE;
}
}
This patch was merged into kernel the ending of last year (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=e7d820a5e549b3eb6c3f9467507566565646a669 )
Thanks,
Qiaowei
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2014-07-23 2:35 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-21 5:38 [PATCH v7 00/10] Intel MPX support Qiaowei Ren
2014-07-21 5:38 ` [PATCH v7 01/10] x86, mpx: introduce VM_MPX to indicate that a VMA is MPX specific Qiaowei Ren
2014-07-21 5:38 ` [PATCH v7 02/10] x86, mpx: add MPX specific mmap interface Qiaowei Ren
2014-07-21 5:38 ` [PATCH v7 03/10] x86, mpx: add macro cpu_has_mpx Qiaowei Ren
2014-07-22 16:18 ` Dave Hansen
2014-07-23 2:35 ` Ren, Qiaowei [this message]
2014-07-23 16:02 ` Dave Hansen
2014-07-24 0:56 ` Ren, Qiaowei
2014-07-24 4:46 ` Dave Hansen
2014-07-24 5:23 ` Ren, Qiaowei
2014-07-21 5:38 ` [PATCH v7 04/10] x86, mpx: hook #BR exception handler to allocate bound tables Qiaowei Ren
2014-07-21 5:38 ` [PATCH v7 05/10] x86, mpx: extend siginfo structure to include bound violation information Qiaowei Ren
2014-07-22 0:42 ` Zhang, Tianfei
2014-07-21 5:38 ` [PATCH v7 06/10] mips: sync struct siginfo with general version Qiaowei Ren
2014-07-21 5:38 ` [PATCH v7 07/10] x86, mpx: decode MPX instruction to get bound violation information Qiaowei Ren
2014-07-21 6:07 ` Andi Kleen
2014-07-21 6:11 ` Ren, Qiaowei
2014-07-21 5:38 ` [PATCH v7 08/10] x86, mpx: add prctl commands PR_MPX_REGISTER, PR_MPX_UNREGISTER Qiaowei Ren
2014-07-21 6:09 ` Andi Kleen
2014-10-13 17:41 ` Dave Hansen
2014-10-14 1:44 ` Ren, Qiaowei
2014-07-23 16:20 ` Dave Hansen
2014-07-21 5:38 ` [PATCH v7 09/10] x86, mpx: cleanup unused bound tables Qiaowei Ren
2014-07-22 0:50 ` Zhang, Tianfei
2014-07-23 16:38 ` Dave Hansen
2014-07-24 0:49 ` Ren, Qiaowei
2014-07-24 1:04 ` Dave Hansen
2014-07-24 1:27 ` Ren, Qiaowei
2014-07-21 5:38 ` [PATCH v7 10/10] x86, mpx: add documentation on Intel MPX Qiaowei Ren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9E0BE1322F2F2246BD820DA9FC397ADE0170079E@shsmsx102.ccr.corp.intel.com \
--to=qiaowei.ren@intel.com \
--cc=dave.hansen@intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox