aigle wrote:
v=0xd and e=0x0000
*If* it was a segment related error, E=0000 means that the General Protection Fault occurred accessing descriptor index 0x0000 (a NULL descriptor) in the GDT.
Did you happen to look at what instruction (at EIP) was being executed when you got the fault? There *may* have been other hints as to what might be going wrong if you had given us a full dump of QEMU's processor state at the time the exception occurred.
Another recommendation might be to toss it in BOCHS which at times can be better at identifying low level problems. BOCHS will often throw warning information on the console that can offer hints at where a problem may lie.
Do you have your code available online like Github or other service?