On Mon, Jul 14, 2014 at 10:04 AM, H. Peter Anvin <h...@zytor.com> wrote: > On 07/09/2014 04:17 PM, Andy Lutomirski wrote: >> This part in __do_double_fault looks fishy: >> >> cmpl $__KERNEL_CS,CS(%rdi) >> jne do_double_fault >> >> Shouldn't that be: >> >> test $3,CS(%rdi) >> jnz do_double_fault >> > > No, it should be fine. The *only* case where we need to do the espfix > magic is when we are on __KERNEL_CS. >
IIRC Xen has a somewhat different GDT, and at least the userspace CS in IA32_STAR disagrees with normal Linux. If the kernel CS is also strange, then there will be an extra possible CS value here. --Andy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/