Re: [PATCH] Pentium Pro - sysenter - doublefault

From: Jim Houston
Date: Mon Aug 25 2003 - 13:11:40 EST


On Mon, 2003-08-25 at 02:29, Jamie Lokier wrote:
> Jamie Lokier wrote:
> > So that means the sysenter instruction _does_ exist on the PPro and
> > early Pentium II, but it isn't usable.
>
> If anyone has information on what the SYSENTER and SYSEXIT
> instructions actually do on Intel Pentium Pro or stepping<3 Pentium II
> processors, I am very interested.
>
> I'm intrigued to know if the buggy behaviour of these instructions is
> really unsafe, or simply hard to use so Intel changed the behaviour.
> (An example of hard to use would be SYSENTER not disabling
> interrupts). If they are safe but hard to use, perhaps the ingenuity
> of kernel hackers can work around the hardness >:)

Hi Jamie,

I tried your test on my machine. It fails with a segmentation
fault. I noticed that the Pentium II specifications update manual
starts with rev C0 stepping (ignoring mask rev < 3).
I'm inclined to forgive Intel for not publishing the scary errata that
goes with the first few mask revs, particularly for an old product.

When I was chasing the original problem, I added tracing code
(compiling the kernel with finstrument-functions) so that when I
got into kgdb after the double-fault I could see that it had just
completed a umask system call. I'm assuming that it failed on
the sysexit.

I keep the old Pentium Pro around because it has an NMI interrupt
button.

I'm happy that Linus has merged the fix to disable correctly
disable sysenter for these machines.

Jim Houston - Concurrent Computer Corp

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/