Messages in this thread | | | From | Andy Lutomirski <> | Date | Thu, 23 Jul 2015 09:46:45 -0700 | Subject | Re: [PATCH 2/5] x86/entry/64, entry: Set up a valid sysenter stack and prepare for 32-bit merge |
| |
On Thu, Jul 23, 2015 at 9:10 AM, Steven Rostedt <rostedt@goodmis.org> wrote: > On Thu, 23 Jul 2015 09:04:38 -0700 > Andy Lutomirski <luto@amacapital.net> wrote: > >> On Thu, Jul 23, 2015 at 9:01 AM, Steven Rostedt <rostedt@goodmis.org> wrote: >> > On Thu, 23 Jul 2015 08:31:40 -0700 >> > Andy Lutomirski <luto@kernel.org> wrote: >> > >> >> Oddly, 64-bit kernels already allocate a percpu sysenter stack, but >> >> they don't enable it. Enable the stack and tweak the rest of the >> >> sysenter setup code to be similar to the 32-bit version. >> > >> > I'm curious. Did you do any investigation into the 64bit code to why it >> > wasn't set? Do you know if that was just overlooked with some of the >> > merging between i386 and x86_64 systems? >> > >> > I'm not asking you to do it if you have not, but if you have, I think >> > it would be more comforting to know that it was just overlooked than >> > there being some other subtle reason. >> >> I think it's just that it was never necessary. #DB has always used >> IST on x86_64 (IIRC it was like that in the very first commit), so the >> sysenter stack was never actually referenced. >> > > Hmm, should this be commented? If it is never referenced, I could > imagine that would add some confusion to future reviewers of this code. >
It is referenced by the SWAPGS_UNSAFE_STACK -> SWAPGS thing, and I'm planning on referencing it more by removing #DB from the debug stack soon (patches written but not tested), so the window of confusion should be short.
--Andy
| |