Messages in this thread | | | Date | Thu, 18 Sep 2003 19:06:29 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] Athlon/Opteron Prefetch Fix for 2.6.0test5 + numbers |
| |
On Thu, Sep 18, 2003 at 05:04:56PM +0100, Jamie Lokier wrote: > Jamie Lokier wrote: > > > + /* Don't check for LDT code segments because they could have > > > + non zero bases. Better would be to add in the base in this case. */ > > > + if (regs->xcs & (1<<2)) > > > + return 0; > > > > It is possible to have a non-standard code segment in the GDT, too. > > Thus a better to check is "unlikely((regs->xcs & 0xffff) != __USER_CS)". > > Ignore me here, I'm being dense - forgetting about __KERNEL_CS :) > > My point is simply that non-zero base GDT segments are possible in > userspace, and whatever code you add later to add the base should > be aware of that.
I don't see how a non standard GDT is possible in user space. The GDT is only managed by the kernel. 2.6 offers to change it for NPTL, but that only applies to data segments.
In vm86 mode the user can load a different base without LDT, but that should not matter here (although it may be better to check for VM86 mode too)
-Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |