>Looking at kernel/emulation/emulation.c in emulate_instr and in
>user/decode.c there is something I don't understand:
>
>0x2b is the instruction opcode of the instruction that causes the panic?
>(/*2b*/ { INS_sub, op(G,v), op(E,v) } and /*2b*/ {
>INS_movntps,op(W,o), op(V,o) } in the One/TwoByteMap tables).
>
>Looking at the stack dump, I would expect the "current instruction" to
>be the faulting instruction, however this is not the case (since it
>displays an add instruction).
As I explained in a previous email, the decoder cannot yet decode
realmode addresses. It ignores the segment part of the address...
so it tries to decode physical address 0x17c3, which is not the
physical address that the instruction is really at. Just ignore
the decoder output.
-- Ramon