1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Intel MPX Memory Protection Still Baking For Linux

Intel

Published on 11 January 2014 09:15 PM EST
Written by Michael Larabel in Intel
Comment On This Article

Intel Linux developers are still working to land Memory Protection Extensions (MPX) support into the mainline Linux kernel for this new feature coming to Skylake.

While we are still waiting for Broadwell to land in the coming months as the next-gen processors succeeding Haswell, Intel Linux developers are already working on early steps towards Intel Skylake enablement. Intel MPX is short for the Memory Protection Extensions and is an x86 iextension for checking pointer references and trying to help developers better fend off possible buffer overflows.

MPX was first detailed by Intel last year as a mix of OS, compiler, and run-time work for increasing software security through checking pointer references. For those not yet familiar with Intel MPX, see the Intel.com articles.

Intel developers have been playing with Intel MPX for GCC since last year while on the kernel side they are still working to land the changes. Qiaowei Ren of Intel published a fresh set of five patches to the Linux kernel on Saturday with this patch series.
Intel(R) Memory Protection Extensions (Intel(R) MPX) is a new capability introduced into Intel Architecture. Intel MPX can increase the robustness of software when it is used in conjunction with compiler changes to check that memory references intended at compile time do not become unsafe at runtime.

Two of the most important goals of Intel MPX are to provide this capability at very low performance overhead for newly compiled code, and to provide compatibility mechanisms with legacy software components. A direct benefit Intel MPX provides is hardening software against malicious attacks designed to cause or exploit buffer overruns.

Intel MPX introduces new registers and new instructions that operate on these registers. Some of the registers added are bounds registers which store a pointer's lower bound and upper bound limits. Whenever the pointer is used, the requested reference is checked against the pointer's associated bounds, thereby preventing out-of-bound memory access (such as buffer overflows and overruns). Out-of-bounds memory references initiate a #BR exception which can then be handled in an appropriate manner.
This new code probably won't end up being mainlined until at least the Linux 3.15 kernel (but could be a surprise for the Linux 3.14 merge window that soon will be opening), but at least that's still well ahead of the expected Intel Skylake debut in 2015. Besides MPX, the 14nm Intel Skylake is expected to also offer new SHA extensions, ADX Add-Carry Instructions, AVX-512F, and various other improvements.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. Scythe Mugen MAX
  2. Intel Core i7 5960X Haswell-E On Linux
  3. Intel 80GB 530 Series M.2 SSD On Linux
  4. With A New Motherboard, The Core i7 5960X Haswell-E Lights Up
Latest Linux Articles
  1. Intel Core i7 5960X CPU Core Scaling Under Linux
  2. AMD RadeonSI Gallium3D Performance For 4K Linux Gaming
  3. 9-Way File-System Comparison With A SSD On The Linux 3.17 Kernel
  4. GCC 5.0 Outruns LLVM 3.5 Compiler By A Bit On Core-AVX2
Latest Linux News
  1. Linux 3.17-rc5 Kernel Released
  2. FreeBSD 10.1 In Beta Ahead Of Planned Release Next Month
  3. RadeonSI Gallium3D-Nine Can Beat AMD Catalyst With Some Wine Tests
  4. NVIDIA Maxwell GPU Support On Nouveau Still Requires More Work
  5. The Meizu MX4 Phone With Ubuntu Is Expected To Be Out In December
  6. Samsung Reportedly Designing Its Own GPU
  7. KDevelop 4.7 Has Changes For Cross-Compiling, Bzr Support & More
  8. Intel Haswell-ULT Graphics Don't Change Much With Linux 3.17, Mesa 10.4
  9. Running GCC 5 On Intel's Haswell-E i7-5960X
  10. Wayland Is Still In Ubuntu 14.10
Latest Forum Discussions
  1. New Group Calls For Boycotting Systemd
  2. support for first generation UVD blocks (RV6xx, RS780, RS880 and RV790)
  3. Nvidia joins the ranks of Apple and Microsoft
  4. Hd 6850
  5. nv and xorg.conf under Debian PPC
  6. X.Org Is Looking For Some Female Help
  7. FSF Issues Their Rebuttal To Apple's New iPhone, Watch & Apple Pay
  8. Updated and Optimized Ubuntu Free Graphics Drivers