Messages in this thread | | | Date | Thu, 29 Jan 2015 20:33:38 -0500 | From | Rik van Riel <> | Subject | Re: [PATCH 0/3]: x86, fpu: unlazy_fpu fixes/cleanups |
| |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 01/29/2015 06:26 PM, Dave Hansen wrote: > On 01/29/2015 01:56 PM, Oleg Nesterov wrote: >> --- x/arch/x86/kernel/traps.c +++ x/arch/x86/kernel/traps.c @@ >> -313,7 +313,7 @@ dotraplinkage void do_bounds(struct pt_r * It is >> not directly accessible, though, so we need to * do an xsave and >> then pull it out of the xsave buffer. */ - >> fpu_save_init(&tsk->thread.fpu); + unlazy_fpu(tsk); xsave_buf = >> &(tsk->thread.fpu.state->xsave); > ... >> bndcsr = get_xsave_addr(xsave_buf, XSTATE_BNDCSR); > > Hmm, if the the thread was not using the FPU, and this fails to > save anything in to the xsave_buf, what will bndcsr point to?
If the thread was not using the FPU, can we reach the bound range exception?
I believe the MPX feature uses information in the xstate.
- -- All rights reversed -----BEGIN PGP SIGNATURE----- Version: GnuPG v1
iQEcBAEBAgAGBQJUyt9yAAoJEM553pKExN6D6U4H+QENaWW78N/A9MfdluF9j1c4 mLVjsna+PrdglRNMgZPIozD/V+aONiVbEvUYt2bGuBP7PaHdvasm+05/U+SJF37z SxdjH0+1U+IZPycf0eGRkrFpZvUuegNzJyQFcvPltjRNHc7faDm3nJv+xdjDd9DX NxcvexnjhkLpXvbEIOksv/41EMjyYtDBEWwenCANCLQaGyk4VJUxXqiZ0ivqtNJX WuzVydvtDebWKPHF61qqtDCGkuuJvypWR6Wbgqe1McKqNgElT4c3f5QDLG45fKrw YaiFzBGpeFEJtDe7XLCmdlp6xUGLL2SxFn5PVdyB1toHd+V6eN//QlwAOhDJPeA= =HPaU -----END PGP SIGNATURE-----
| |