[comp.os.minix] illegal opcode trap for ATs

martyl@rocksvax.UUCP (Marty Leisner) (10/19/87)

The following is an illegal opcode trap I hung on interrupt 6 on a 286.

It seems to make the system somewhat more robust (at least a process which
went bonkers will get caught sooner or later (hopefully sooner).

It runs fine in real mode.

I'm running my system without stack limit checking, so the splimit field
is really meaningless to me.

PUBLIC void _undefined_opcode()
 {
 	printf("undefined opcode in process %x\n", cur_proc);
 	printf("sp = %x, splimit = %x, ip = %x\n", proc_ptr->p_sp,
					proc_ptr->p_splimit,
					proc_ptr->p_pcpsw.pc);
 	if(cur_proc > LOW_USER) {
		cause_sig(cur_proc, SIGILL);
		unready(proc_ptr);
	}
 }


marty
-- 
marty leisner
xerox corp
leisner.henr@xerox.com
martyl@rocksvax.uucp