Skip to contentSkip to conversation

address of int80 idt

DISCUSSION Petr Vandrovec 1 participant 1 message Jul 15, 2004

lore
Share & tools
lore
#0 lore raw
Quoted 6 lines · bugghy

The problem is that on some kernels 2.4.22 (and I think on 2.6.7, 2.2.26 and 2.4.26 too) on vmware sidt returns a bogus address for idtr.base:
idtr.base=0xffc6a370 (2.4.22)

If I try to read from /dev/kmem from this address it doesn't work.

It is feature, not a bug... Well, it is bug, but not easily fixable. Either check 'Disable acceleration' checkbox in VM configuration, or, if you want portable solution (if your program has root privileges), call iopl(3) before issuing sidt. Or issue sidt in the kernel, not in userspace.
Best regards,
Petr Vandrovec