NetBSD-Bugs archive

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

Re: bin/58678: ntpd crashes on sparc64



The following reply was made to PR bin/58678; it has been noted by GNATS.

From: Christos Zoulas <christos%zoulas.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Subject: Re: bin/58678: ntpd crashes on sparc64
Date: Thu, 19 Sep 2024 07:25:26 -0400

 what is cb?
 
 christos
 
 > On Sep 19, 2024, at 6:55=E2=80=AFAM, martin%netbsd.org@localhost wrote:
 >=20
 > =EF=BB=BF
 >>=20
 >> Number:         58678
 >> Category:       bin
 >> Synopsis:       ntpd crashes on sparc64
 >> Confidential:   no
 >> Severity:       critical
 >> Priority:       high
 >> Responsible:    bin-bug-people
 >> State:          open
 >> Class:          sw-bug
 >> Submitter-Id:   net
 >> Arrival-Date:   Thu Sep 19 10:55:00 +0000 2024
 >> Originator:     Martin Husemann
 >> Release:        NetBSD 10.99.12
 >> Organization:
 > The NetBSD Foundation, Inc.
 >> Environment:
 > System: NetBSD thirdstage.duskware.de 10.99.12 NetBSD 10.99.12 (MODULAR) #=
 747: Thu Sep 19 10:16:21 CEST 2024 martin%thirdstage.duskware.de@localhost:/home/marti=
 n/current/src/sys/arch/sparc64/compile/MODULAR sparc64
 > Architecture: sparc64
 > Machine: sparc64
 >> Description:
 >=20
 > After updating to -current as of a few hours ago, ntpd(8) won't startup
 > on sparc64
 >=20
 > Thread 2 "" received signal SIGBUS, Bus error.
 > alloc_res4 ()
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_restrict.c:2=
 43
 > 243                     LINK_SLIST(resfree4, res, link);
 > (gdb) bt
 > #0  alloc_res4 ()
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_restrict.c:2=
 43
 > #1  hack_restrict (op=3D<optimized out>, resaddr=3D0x405ca824,
 >    resmask=3D0xffffffffffffc918, ippeerlimit=3D<optimized out>,
 >    mflags=3D<optimized out>, rflags=3D<optimized out>, expire=3D0)
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_restrict.c:7=
 05
 > #2  0x000000000014e2ac in create_interface (port=3D123, protot=3D0x405ca20=
 0)
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_io.c:2101
 > #3  update_interfaces (receiver=3D0x0, data=3D<optimized out>, port=3D123)=
 
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_io.c:1912
 > #4  0x000000000014f140 in create_sockets (port=3D123)
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_io.c:2039
 > #5  io_open_sockets ()
 >    at /home/martin/current/src/external/bsd/ntp/dist/ntpd/ntp_io.c:514
 > #6  0x000000000013725c in config_ntpd (input_from_files=3D<optimized out>,=
 
 >    ptree=3D0x40592000)
 > (gdb) list   =20
 > 238             }
 > 239             rl =3D eallocarray(count, cb);
 > 240             /* link all but the first onto free list */
 > 241             res =3D (void *)((char *)rl + (count - 1) * cb);
 > 242             for (i =3D count - 1; i > 0; i--) {
 > 243                     LINK_SLIST(resfree4, res, link);
 > 244                     res =3D (void *)((char *)res - cb);
 > 245             }
 > 246             DEBUG_INSIST(rl =3D=3D res);
 > 247             /* allocate the first */
 > (gdb) p resfree4
 > $1 =3D (restrict_u *) 0x0
 > (gdb) p res
 > $2 =3D (restrict_u *) 0x405e2384
 > (gdb) p link
 > $3 =3D {<text variable, no debug info>} 0x41467140 <link>
 >=20
 > I guess "restrict_u" needs more than 4 byte alignment, the compiler uses
 > stx to store 64byte there:
 >=20
 > (gdb) x/16i $pc
 > =3D> 0x16da50 <hack_restrict+1680>:       stx  %g2, [ %g1 ]
 > (gdb) p/x $g1
 > $6 =3D 0x405e2384
 >=20
 >=20
 >> How-To-Repeat:
 > s/a
 >=20
 >> Fix:
 > n/a
 


Home | Main Index | Thread Index | Old Index