Comment 4 for bug 94911

Revision history for this message
Paul Sladen (sladen) wrote : Re: [apport] usplash crashed with SIGTRAP at vesa_setmode->LRMI_int->run_vm86

<mjg59> Crashing in BIOS code? Turns out to be hard to fix.
<sladen> mjg59: can it be hooked, caught and just "failed" rather than leading to a crash?
<mjg59> No
<mjg59> Eh.
<mjg59> You could have a sigsegv handler.
<mjg59> But that is clearly not the right answer
<sladen> vesa_setmode() could catch SIGTRAP before lrmi is called and cleanly exit on failure/trap
<mjg59> I'm not sure how this is preferable
<mjg59> The code either crashes or it doesn't
<sladen> it's the equivalent of try { setmode() } except { printf("failed"); }
<mjg59> sladen: The code tried to write to memory it didn't own. It really should crash.
<sladen> rather than just dying.---in which case apport catches the crash and will want to report it
<mjg59> The right fix is to tell apport to ignore it, not to pretend we're not crashing when we are
<sladen> which is pointless if there's nothing to be done about it
<pitti> mjg59: you can actually do so now in 0.7
<mjg59> pitti: Score