Jens Nerche wrote:
> Another question: lgdt emulation does a remapping of
> monitor. Remapping is unmap and map. Map (map_monitor
> in monitor.c) searches for
> unused entrys in (now the new) GDT and filles them with
> cs, ss and tss descritors. cs ist stored in nexus'
> mon_jmp_info.selector field. This is used in nexus
> while switching to guest: ljmp (MON_JMP_INFO)(%ebx).
Correct.
> Now I _expect_ to see a new value in cs, but _find_
> still the old value
What does that mean? How did you determine that?
> (of 0xb, so cs selects not the
> new descriptor found in map_monitor but the old one,
> which has now a different function in new gdt - vm
> crashes...).
Does the ljmp itself cause the GPF? If so, the cs in
the exception frame is still the old one ...
Bye,
Ulrich
--
Ulrich Weigand,
IMMD 1, Universitaet Erlangen-Nuernberg,
Martensstr. 3, D-91058 Erlangen, Phone: +49 9131 85-27688