Rtadvd on sparc64 is working fine here on an old 4.8-current. tonatiuh$ gcc -v Reading specs from /usr/bin/../lib/gcc-lib/sparc64-unknown-openbsd4.8/4.2.1/specs Target: sparc64-unknown-openbsd4.8 Configured with: OpenBSD/sparc64 system compiler Thread model: posix gcc version 4.2.1 20070719
tonatiuh$ ps auxw | grep rt _rtadvd 17752 0.0 0.2 544 1176 ?? Is 1Feb11 0:05.17 /usr/sbin/rtadvd vlan0 merlin 9854 0.0 0.2 520 1144 p0 S+ 5:22PM 0:00.02 grep rt tonatiuh$ dmesg console is /pci@1f,0/pci@1,1/isa@7/serial@0,3f8 Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. Copyright (c) 1995-2010 OpenBSD. All rights reserved. http://www.OpenBSD.org OpenBSD 4.8-current (GENERIC) #167: Sat Nov 20 16:22:27 MST 2010 dera...@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/compile/GENERIC real mem = 536870912 (512MB) avail mem = 514940928 (491MB) mainbus0 at root: Netra T1 200 (UltraSPARC-IIe 500MHz) cpu0 at mainbus0: SUNW,UltraSPARC-IIe (rev 1.4) @ 500 MHz cpu0: physical 16K instruction (32 b/l), 16K data (32 b/l), 256K external (64 b/l) psycho0 at mainbus0: SUNW,sabre, impl 0, version 0, ign 7c0 psycho0: bus range 0-2, PCI bus 0 psycho0: dvma map c0000000-dfffffff pci0 at psycho0 ppb0 at pci0 dev 1 function 1 "Sun Simba PCI-PCI" rev 0x13 pci1 at ppb0 bus 1 ebus0 at pci1 dev 12 function 0 "Sun RIO EBus" rev 0x01 "flashprom" at ebus0 addr 0-fffff not configured clock1 at ebus0 addr 0-1fff: mk48t59 lom0 at ebus0 addr 200000-200003 ivec 0x2a: LOMlite2 rev 3.10 alipm0 at pci1 dev 3 function 0 "Acer Labs M7101 Power" rev 0x00: 74KHz clock iic0 at alipm0 "max1617" at alipm0 addr 0x18 skipped due to alipm0 bugs spdmem0 at iic0 addr 0x54: 128MB SDRAM registered ECC PC133CL3 spdmem1 at iic0 addr 0x55: 128MB SDRAM registered ECC PC133CL3 spdmem2 at iic0 addr 0x56: 128MB SDRAM registered ECC PC133CL3 spdmem3 at iic0 addr 0x57: 128MB SDRAM registered ECC PC133CL3 ebus1 at pci1 dev 7 function 0 "Acer Labs M1533 ISA" rev 0x00 power0 at ebus1 addr 2000-2007 ivec 0x25 com0 at ebus1 addr 3f8-3ff ivec 0x2b: ns16550a, 16 byte fifo com0: console com1 at ebus1 addr 2e8-2ef ivec 0x2b: ns16550a, 16 byte fifo gem0 at pci1 dev 12 function 1 "Sun ERI Ether" rev 0x01: ivec 0x7c6, address 00:03:ba:0f:c1:87 ukphy0 at gem0 phy 1: Generic IEEE 802.3u media interface, rev. 1: OUI 0x0010dd, model 0x0002 ohci0 at pci1 dev 12 function 3 "Sun USB" rev 0x01: ivec 0x7e4, version 1.0, legacy support pciide0 at pci1 dev 13 function 0 "Acer Labs M5229 UDMA IDE" rev 0xc3: DMA, channel 0 configured to native-PCI, channel 1 configured to native-PCI pciide0: using ivec 0x7cc for native-PCI interrupt pciide0: channel 0 disabled (no drives) pciide0: channel 1 disabled (no drives) gem1 at pci1 dev 5 function 1 "Sun ERI Ether" rev 0x01: ivec 0x7dc, address 00:03:ba:0f:c1:88 ukphy1 at gem1 phy 1: Generic IEEE 802.3u media interface, rev. 1: OUI 0x0010dd, model 0x0002 ohci1 at pci1 dev 5 function 3 "Sun USB" rev 0x01: ivec 0x7e6, version 1.0, legacy support usb0 at ohci0: USB revision 1.0 uhub0 at usb0 "Sun OHCI root hub" rev 1.00/1.00 addr 1 usb1 at ohci1: USB revision 1.0 uhub1 at usb1 "Sun OHCI root hub" rev 1.00/1.00 addr 1 ppb1 at pci0 dev 1 function 0 "Sun Simba PCI-PCI" rev 0x13 pci2 at ppb1 bus 2 siop0 at pci2 dev 8 function 0 "Symbios Logic 53c896" rev 0x07: ivec 0x7e0, using 8K of on-board RAM scsibus0 at siop0: 16 targets, initiator 7 sd0 at scsibus0 targ 0 lun 0: <IBM, DDYS-T09170M, SC2B> SCSI3 0/direct fixed sd0: 8748MB, 512 bytes/sec, 17916240 sec total sd1 at scsibus0 targ 1 lun 0: <WDIGTL, WDE9180 ULTRA2, 1.30> SCSI2 0/direct fixed sd1: 8727MB, 512 bytes/sec, 17873040 sec total siop1 at pci2 dev 8 function 1 "Symbios Logic 53c896" rev 0x07: ivec 0x7e0, using 8K of on-board RAM scsibus1 at siop1: 16 targets, initiator 7 skc0 at pci2 dev 5 function 0 "Linksys EG1032" rev 0x12, Yukon (0x1): ivec 0x7d5 sk0 at skc0 port A: address 00:0c:41:e5:47:0c eephy0 at sk0 phy 0: 88E1011 Gigabit PHY, rev. 3 siop0: target 0 now using tagged 16 bit 40.0 MHz 31 REQ/ACK offset xfers vscsi0 at root scsibus2 at vscsi0: 256 targets softraid0 at root siop0: target 1 now using tagged 16 bit 40.0 MHz 31 REQ/ACK offset xfers bootpath: /pci@1f,0/pci@1,0/scsi@8,0/disk@0,0 root on sd0a swap on sd0b dump on sd0b -RR ________________________________________ From: owner-m...@openbsd.org [owner-m...@openbsd.org] On Behalf Of Josh Smith [juice...@gmail.com] Sent: Sunday, February 27, 2011 2:55 PM To: misc@openbsd.org Subject: Re: 4.8 Sparc64 rtadvd crash On Sun, Feb 27, 2011 at 5:12 PM, Stuart Henderson <s...@spacehopper.org> wrote: > In gmane.os.openbsd.misc, you wrote: >> >> Earlier tonight I upgraded from 4.7 to 4.8 (yes I know I'm a bit >> behind on this) and everything seemed to have went fine with the >> upgrade. except rtadvd seems to be crashing at random on me. >> >> Here is my dmesg: > <snip> >> and my rtadvd.conf: >> >> rl0:\ >> B B B B :addr="2001:470:8:9ec::":prefixlen#64:raflags#64: >> >> and last but not least here is the output of running rtadvd -d rl0: >> >> RA timer on rl0 is set to 16:0 >> set timer to 15:994134. waiting for inputs or timeout >> RA timer on rl0 is expired >> send RA on rl0, # of waitings = 0 >> RA timer on rl0 is set to 16:0 >> set timer to 16:0. waiting for inputs or timeout >> RA timer on rl0 is expired >> send RA on rl0, # of waitings = 0 >> RA timer on rl0 is set to 16:0 >> set timer to 16:0. waiting for inputs or timeout >> RA timer on rl0 is expired >> send RA on rl0, # of waitings = 0 >> RA timer on rl0 is set to 393:0 >> set timer to 393:0. waiting for inputs or timeout >> received a routing message (type = 1, len = 200) >> Bus error >> >> I'm really not sure where to go from here from a troubleshooting >> prospective. B Hopefully someone on the list has an idea. B Please let >> me know if there is any other relevant information I can provide. > > Thanks for a decent report - if you could obtain a backtrace that > would be useful. > > cd /usr/src/*/rtadvd > make obj && make clean && make DEBUG=-g > gdb obj/rtadvd > set args -d rl0 > run > > Hopefully it will still SIGBUS (on sparc64 this is usually due to > unaligned memory access), and then you can 'bt full'. Considering the > timeframe (4.7->4.8), it's likely to be connected with the move to gcc 4. > > Stuart, Thanks for the quick reply. This is a first for me so hopefully this is what you're looking for(if not let me know and I'll give it another shot): GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "sparc64-unknown-openbsd4.8"... (gdb) set args -d rl0 (gdb) run Starting program: /usr/obj/usr.sbin/rtadvd/rtadvd -d rl0 RA timer on rl0 is set to 16:0 set timer to 15:953016. waiting for inputs or timeout RA timer on rl0 is expired send RA on rl0, # of waitings = 0 RA timer on rl0 is set to 16:0 set timer to 16:0. waiting for inputs or timeout RA timer on rl0 is expired send RA on rl0, # of waitings = 0 RA timer on rl0 is set to 16:0 set timer to 16:0. waiting for inputs or timeout RA timer on rl0 is expired send RA on rl0, # of waitings = 0 RA timer on rl0 is set to 284:0 set timer to 284:0. waiting for inputs or timeout received a routing message (type = 1, len = 168) Program received signal SIGBUS, Bus error. 0x0000000000106648 in get_next_msg (buf=0xfffffffffffe3536 "", lim=0xfffffffffffe35de "\005o?=", ifindex=0, lenp=0xfffffffffffe3528, filter=28678) at /usr/src/usr.sbin/rtadvd/if.c:247 247 get_rtaddrs(rtm->rtm_addrs, sa, rti_info); Once again, I hope I've done this properly and that the information helps. Thank you, -- Josh Smith