Yeah, so inst_fetch or its callers are buggy. The segment registers are never validated. The fault recovery stuff is not there for GP faults, though I don't think it would be real hard to add. Since the callers are in fault-handling cases already, it's probably easiest just to validate the segment registers directly on the way in. A quick hack would be just to check that regs->cs is USER_CS, which in practice it always should be. That breaks vm86 and things using their own LDT code segments, but we don't actually have any in the Hurd so you could just do that at least temporarily.
That panic is just a secondary problem, however. Once you catch that, then you will have to figure out what the caller is and how it got the bogus register state. _______________________________________________ Bug-hurd mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/bug-hurd