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

Home | Main Index | Thread Index | Old Index