Re: [tip:x86/vdso] x86/vdso32/syscall.S: Do not load __USER32_DS to %ss

Borislav Petkov
2015-04-23T17:14:54Z

On Thu, Apr 23, 2015 at 09:50:17AM -0700, Andy Lutomirski wrote:
> On Thu, Apr 23, 2015 at 9:41 AM, Denys Vlasenko
> <vda.linux@googlemail.com> wrote:
> > An alternative fix would be, if we decided to schedule
> > in an interrupt, check %ss for zero and reload it
> > with __KERNEL_DS before schedule.
>
> For anyone who has the right hardware (not me!), a possible reproducer is here:
>
> https://git.kernel.org/cgit/linux/kernel/git/luto/misc-tests.git/
>
> make && taskset -c 0 ./sysret_ss_attrs_32

[ 195.438441] traps: sysret_ss_attrs[1745] trap stack segment ip:f77dab87 sp:ffdf0b70 error:0
[ 196.831952] traps: sysret_ss_attrs[1748] trap stack segment ip:f7786b87 sp:fffc0810 error:0

Ran it twice.

--
Regards/Gruss,
Boris.

ECO tip #101: Trim your mails when you reply.
--