Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: OSX virtualbox 3 beta still dumps core on NetBSD 5.0 release .iso



On Sat, Jun 20, 2009 at 05:29:42PM -0500, David Young wrote:
 > > Stopped in pid 0.12 (system) at netbsd:spllower+0x29: addl  %eax,0(%eax)
 > 
 > What are the registers?  (Type 'show registers'.)  On which line does
 > the exception occur?  (If you have a netbsd.gdb, run gdb on it and type
 > 'l *(wdc_drvprobe+0x27)'.)

In the stuff George Michaelson posted, which is the same crash (except
it has "lock addl", maybe due to different binary patching?) %eax is 0.

 > (FWIW, I don't see any such instruction as 'addl %eax,0(%eax)' in
 > spllower or cx8_spllower, but I am looking in -current, and IIRC you
 > are running 5.0.  Significantly, spllower is one of those routines
 > that is "patched" at boot, and sometimes emulations have broken binary
 > patching.)

I've been wondering about this.

I've checked three 5.0-series kernels (one recent, one from April, one
from January) and while there are plenty of addl instructions, none
have anything like this form, even using objdump --disassemble-all to
get at .data. There are only a handful of "lock addl" instructions and
they're all relative to %esp.

So I think it'd be rather interesting to see what's being executed.
(Although in this kind of situation what ddb reads out may not be what
the emulated processor is actually doing...)

-- 
David A. Holland
dholland%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index