Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 05 Sep 2013 21:15:58 -0600
From:      Ian Lepore <ian@FreeBSD.org>
To:        Ronald Klop <ronald-freebsd8@klop.yi.org>
Cc:        freebsd-arm@FreeBSD.org
Subject:   Re: Reminder: Removal of WITHOUT_ARM_EABI
Message-ID:  <1378437358.1111.444.camel@revolution.hippie.lan>
In-Reply-To: <op.w2xp4uin8527sy@212-182-167-131.ip.telfort.nl>
References:  <20130820091527.42127170@bender.Home> <1377271598.1111.78.camel@revolution.hippie.lan> <op.w2k0j5i08527sy@212-182-167-131.ip.telfort.nl> <CAJ-VmokTrMDJtw0OwjMamW-T=ZAx_6%2BhLxq=mxUbfLLA84ecPA@mail.gmail.com> <op.w2k1r5sc8527sy@212-182-167-131.ip.telfort.nl> <CAJ-Vmo=eWwRvKRFADvakTMWo17NrJf665sEQSYkay%2BK-ayBmbg@mail.gmail.com> <op.w2k6dutz8527sy@212-182-167-131.ip.telfort.nl> <CAJ-Vmo=0s95gSvct5dSkP8D9rpL92_cy76T6F7cYSWNJbdSN2Q@mail.gmail.com> <CAJ-Vmo=b4zZx=bY=3h10aL7gZxh=J1m%2Be5LpqozpwcGLC5zHNA@mail.gmail.com> <op.w2k7ng158527sy@212-182-167-131.ip.telfort.nl> <CAJ-Vmomy8dfhC89nOmHE=hpm3cQOV4pW_iCVL5HAOyFsqHTiKg@mail.gmail.com> <op.w2k8jvbq8527sy@212-182-167-131.ip.telfort.nl> <CAJ-VmomABwx=hd7nKVc1KbiZbnFmkgtsY9=DQuxF0xgqtN2wSA@mail.gmail.com> <6046B66D-5F4C-4E8D-923A-3E26DED5DD8F@bsdimp.com> <CAJ-Vmon5x8EB_LppvmxZmh8UPxgJx-jn-J-Ye5efFt4HvXcuuw@mail.gmail.com> <op.w2mo6evn8527sy@212-182-167-131.ip.telfort.nl> <op.w2xp4uin8527sy@212-182-167-131.ip.telfort.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 2013-09-05 at 12:59 +0200, Ronald Klop wrote:
> On Fri, 30 Aug 2013 14:04:52 +0200, Ronald Klop =20
> <ronald-freebsd8@klop.yi.org> wrote:
>=20
> >
> > Oh wow, for some lucky reason I add rc_info=3D"YES" to rc.conf and wh=
en I =20
> > rebooted it did an fsck of all filesystems and it booted into multius=
er. =20
> > I am now logged in and see the same as Ian. Top does not work. Df han=
gs. =20
> > Etc.
> > I see I don't have debugging symbols compiled in the userland so I ne=
ed =20
> > to rebuild to make gdb happy.
> >
> > Ronald.
>=20
> I have some new data. I compiled world with debug symbols and succeeded=
 to =20
> boot correctly again (it works if fsck needs to kick in).
> root@:~ # gdb ps
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and yo=
u =20
> are
> welcome to change it and/or distribute copies of it under certain =20
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for deta=
ils.
> This GDB was configured as "arm-marcel-freebsd"...
> (gdb) run axu
> Starting program: /bin/ps axu
>=20
>=20
> ^C
> Program received signal SIGINT, Interrupt.
> 0x201cc108 in __mult_D2A (a=3D<value optimized out>, b=3D<value optimiz=
ed out>)
>      at /usr/obj/arm.arm/usr/src/lib/libc/gdtoa_misc.c:311
> 311     /usr/obj/arm.arm/usr/src/lib/libc/gdtoa_misc.c: No such file or=
 =20
> director                                          y.
>          in /usr/obj/arm.arm/usr/src/lib/libc/gdtoa_misc.c
> Current language:  auto; currently minimal
> (gdb) bt
> #0  0x201cc108 in __mult_D2A (a=3D<value optimized out>, b=3D<value opt=
imized =20
> out>)
>      at /usr/obj/arm.arm/usr/src/lib/libc/gdtoa_misc.c:311
> #1  0x201cc2d8 in __pow5mult_D2A (b=3D<value optimized out>,
>      k=3D<value optimized out>)
>      at /usr/obj/arm.arm/usr/src/lib/libc/gdtoa_misc.c:409
> #2  0x201c2b68 in __dtoa (d0=3D<value optimized out>,
>      mode=3D<value optimized out>, ndigits=3D1, sign=3D<value optimized=
 out>,
>      rve=3D<value optimized out>)
>      at /usr/obj/arm.arm/usr/src/lib/libc/gdtoa_dtoa.c:533
> #3  0x201b8c70 in __vfprintf (fp=3D0xbfffe238, locale=3D0x201ec620,
>      fmt0=3D0xeec8 "%.1f", ap=3D{__ap =3D 0xbfffe378})
>      at /usr/src/lib/libc/stdio/vfprintf.c:713
> #4  0x2015a064 in vasprintf_l (str=3D0xbfffe378, locale=3D0x201ec620,
>      fmt=3D0xeec8 "%.1f") at /usr/src/lib/libc/stdio/vasprintf.c:59
> #5  0x2015a130 in vasprintf (str=3D0xbfffe378, fmt=3D0xeec8 "%.1f")
>      at /usr/src/lib/libc/stdio/vasprintf.c:73
> #6  0x20158748 in asprintf (s=3D<value optimized out>,
>      fmt=3D0x20a26338 =20
> "=BARX=BA=C3=E8\037\227=E3\231a=F5Zu\020=EF=E9\031=FD=CB\220\001=F9=EA=C6=
=DB=A9iM\001=BC=B5=EEJ=CD=B1                                          =20
> =CF=C6=C3=A9=D3.=D0\017$)=F6=E4\005=E3eZX=B1.Z&\004 \005=D7\005")
>      at /usr/src/lib/libc/stdio/asprintf.c:52
> #7  0x0000b924 in pmem (k=3D<value optimized out>, ve=3D<value optimize=
d out>)
>      at /usr/src/bin/ps/print.c:669
> #8  0x0000d014 in $a () at /usr/src/bin/ps/ps.c:1134
> #9  0x0000d014 in $a () at /usr/src/bin/ps/ps.c:1134
>=20
> Is it possible this gives an endless loop on armv5?

This is good info, thanks.  We've been digging into it a bit more on
irc.  One thing I determined that I'll mention so it saves you some
grief... you were lucky to get that backtrace, because of all the "value
optimized out" stuff.  If you build the library with -O0 to prevent
that, the backtrace will contain floating point numbers.  Then because
gdb uses the libc code we're trying to debug to format floating point
numbers, gdb locks up.

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1378437358.1111.444.camel>