Well, we *could* do a 16-bit PM segment (and do two far jumps), but that
seems rather silly. We'd have to patch the GDT for the base in that
case, anyway.
This is more or less the same code I had for the first version of the
patch, modulo moving the short jump of course. I do like making the
32-bit code a separate function, but it really should be "movl %ecx,..."
in the 32-bit code.
I have to admit I agree with Eric that this is probably overkill, but
hey, there is nothing like a bit of overkill to make sure something is
really and truly dead.
Cooking up a tree now.
-hpa
-