Skip site navigation (1)Skip section navigation (2)
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>