Date: Sun, 14 Sep 2014 12:00:33 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Carsten Mattner <carstenmattner@gmail.com> Cc: freebsd-arch@freebsd.org Subject: Re: Intel MPX (Skylake ISA) support? Message-ID: <20140914090033.GA2737@kib.kiev.ua> In-Reply-To: <CACY%2BHvqKYhXzPgvK8CWpp4NMcD2_c3xzownVBk6O=8_4PiM%2Bjw@mail.gmail.com> References: <CACY%2BHvoMDFLJLy7hz3guJNrJH8gmi5Vh9-rYeRErr2JgDhV2yw@mail.gmail.com> <20140913162059.GU2737@kib.kiev.ua> <CACY%2BHvqKYhXzPgvK8CWpp4NMcD2_c3xzownVBk6O=8_4PiM%2Bjw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--l0SlVHLU1TISIWpL Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Sep 13, 2014 at 09:47:10PM +0200, Carsten Mattner wrote: > On Sat, Sep 13, 2014 at 6:20 PM, Konstantin Belousov > <kostikbel@gmail.com> wrote: > > On Sat, Sep 13, 2014 at 12:45:16PM +0200, Carsten Mattner wrote: > >> Are there any plans to include the necessary (kernel, libc) support for > >> Intel MPX (https://en.wikipedia.org/wiki/Intel_MPX)? > > > > I looked at this several times. The 319433 (Instructions Set Extensions > > prog reference) even at the current revision 20 still seems to not prov= ide > > the complete documentation on the CPU side. E.g., could you point me at > > the description of the save area for MPX ? It is required since usermo= de > > bndcfg register can only be set by restoring from the XSAVE area. > > > > That said, I believe that most, if not all, of the needed kernel-side > > support is already there by the generic XSAVE code. > > > > I never see any specification of runtime services expected by the code > > generated by mpx-enabled gcc. >=20 > Is https://lkml.org/lkml/2014/9/11/182 helpful? Not for me. I have zero interest in reverse-engineering Linux code for core CPU functionality. Intel usually provides high-quality documentation for the processors, and I hope that they will provide all needed information together with the hardware release. Another significant missing piece is the lack of description of the initial state and expectation of the runtime support in the ABI document. The ABI draft 0.3 from July 17, 2013, specially edited for MPX, only talks about argument passing conventions and dwarf, it seems. It is curious discussion about non-feasibility of implementing MPX translation tables in usermode. Just for fun, I will try to do something purely in usermode (when/if hardware will be available). --l0SlVHLU1TISIWpL Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBAgAGBQJUFVkxAAoJEJDCuSvBvK1BLn0P+wbB+reTsqJb+UrBaxmRyfnE WrspBbYMlD3vLFVE8bCR3Gy1CIHrwaS96DQWQW5V5gWvyXnMsfe+jKYSqBVegMkg V47JLbEmqjPXdSZEd7u4vxFVpaTFTJCkQgRKZJEIOe+wdxnfNzAJ8dK9mGfhE4lD f8CwdcZFuheM7aQajHHkC5nbCJ+eMeU1YkmKkdqVX+cojGwyk2RbsghctrygqpCg Sv/DlLgiKGHqb1Pkgpi3A35UyF8ZE1DrJkS8WY+IVWwkJ05oV/g+blX1UGsabn8i A1LKR0I43nKrDlr/zhkJ3asmPtxO/WNsLQddAvCyDLyJCO8jsvep4Nlzfu2aysBY j50vL+sBLQmDUm628WvZJhl8l39COQLobsP9yu05AJiqZusJR9mAbI3ozUruDT1g WU6/W1wfqieo3Wb4wDnB7bOxn4e1uhZwzssx9fLCjXfWOAadhoOVlbMsZsmuQm4x AGdeep2rfKwceFjg1EnhMHGBimZEaXRg5Hb+8dHy6wWri0C6GVDsJgOO4SL2Tsvm FSWryKG5rjef+56GCZkLeiG6FNPGtPnJuftYWZS6rpcWJ5yCL0Lgja6zZORwOXlZ BTdMtjhLgDBloVirCBbt6EhoTbdK6iEDXagJQtZMlz3XmvLMm1XBF3/LbqbaMTW/ JzPFhXsDOJ25Lh6+i0s1 =N7ZO -----END PGP SIGNATURE----- --l0SlVHLU1TISIWpL--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140914090033.GA2737>