Date: Sat, 5 Jul 2014 14:57:45 +0200 From: Dimitry Andric <dim@FreeBSD.org> To: Arrigo Marchiori <ardovm@yahoo.it> Cc: stable@freebsd.org, questions@freebsd.org, current@freebsd.org, wsk <wsk@gddsn.org.cn> Subject: Re: 10.0-RELEASE BTX halted on DELL R900 Message-ID: <5881B5EA-B625-4E47-ADCB-3F2F894A8630@FreeBSD.org> In-Reply-To: <20140705060939.GA11739@flea.casa> References: <53B659B7.3020202@gddsn.org.cn> <20140705060939.GA11739@flea.casa>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_8BFBC2F8-7735-4D1E-8644-B92496494102 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 05 Jul 2014, at 08:09, Arrigo Marchiori <ardovm@yahoo.it> wrote: >=20 > On Fri, Jul 04, 2014 at 03:37:27PM +0800, wsk wrote: >> lists >> I met a BTX halted problem while upgrade Freebsd 9.0-RC3 to=20 >> 10.0-Release via freebsd-update. >> and please check the link below: >> http://sw.gddsn.org.cn/jopens/test/btx.jpg >>=20 >> BTW: I can booted 10.0-R from DVD-ROM as expected but got same error=20= >> message with flash-driver. >=20 > I don't remember if that error message means ``division by zero''. It certainly looks a lot like it. The code at cs:eip from the OP's screenshot disassembles to: 36217: f7 35 bc d6 03 00 divl 0x3d6bc 3621d: 85 ff test %edi,%edi 3621f: 74 05 je 0x36226 36221: 89 1f mov %ebx,(%edi) 36223: 89 4f 04 mov %ecx,0x4(%edi) 36226: 89 c2 mov %eax,%edx 36228: e9 c2 00 00 00 jmp 0x362ef 3622d: 66 c7 45 ea 00 00 movw $0x0,-0x16(%ebp) 36233: 89 c8 mov %ecx,%eax This is a piece of code from /usr/src/lib/libstand/qdivrem.c, which is used to do 64-bit divides. It would be nice if you could try out this loader binary, which has a few additional checks for zero sector counts or sizes: http://www.andric.com/freebsd/loader.edd SHA256 (loader.edd) =3D = 89f99500adb3a8feaa84336ce625975bcfdc0f886514ab02de4992859a671aa9 However, this might still mis-detect your disk sizes, obviously. > Just in case, you could try the patch attached to this bug: > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D176748 >=20 > The patch was compiled for 9-STABLE; if it does not apply to the 10.0 > sources, then drop me a line so I can adapt it. I tried this patch on a few FreeBSD VMs, and each of them stopped being able to mount the root filesystem because of it. I don't really know what the explanation is... -Dimitry --Apple-Mail=_8BFBC2F8-7735-4D1E-8644-B92496494102 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) iEYEARECAAYFAlO39lAACgkQsF6jCi4glqN6TwCg43hL9pRYMnkhC+4dLhcyYQlI kDoAoOV0P1iLuiAsuYWctYoSAH7YBFMV =GmAj -----END PGP SIGNATURE----- --Apple-Mail=_8BFBC2F8-7735-4D1E-8644-B92496494102--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5881B5EA-B625-4E47-ADCB-3F2F894A8630>