Subject: port-macppc/32979: random SIGILL when swapping
To: None <port-macppc-maintainer@netbsd.org, gnats-admin@netbsd.org,>
From: None <macallan@netbsd.org>
List: netbsd-bugs
Date: 03/03/2006 16:55:00
>Number:         32979
>Category:       port-macppc
>Synopsis:       random SIGILL when swapping
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    port-macppc-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 03 16:55:00 +0000 2006
>Originator:     Michael Lorenz
>Release:        -current 3.99.15
>Organization:
>Environment:
NetBSD absente 3.99.15 NetBSD 3.99.15 (ABSENTE) #19: Mon Feb 20 13:52:52 EST 2006  ml@Macallan:/data/src/sys/arch/macppc/compile/ABSENTE macppc

>Description:
Processes die with SIGILL when physical memory is exhausted and the machine starts to swap things out. This happens on a 1st generation iMac with 64MB RAM but I've been unable to reproduce it on a G3-equipped S900 or an iBook G4. It also happens with 3.0 GENERIC.
The memory itself seems ok since neither MacOS nor Yellow Dog Linux have any problems and various memory testers didn't report anything either.

Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 3.99.15 (ABSENTE) #19: Mon Feb 20 13:52:52 EST 2006
        ml@Macallan:/data/src/sys/arch/macppc/compile/ABSENTE
total memory = 65536 KB
avail memory = 58436 KB
mainbus0 (root)
cpu0 at mainbus0: 750 (Revision 2.2), ID 0 (primary)
cpu0: HID0 8090c0a4<EMCP,DOZE,DPM,ICE,DCE,SGE,BTIC,BHT>
cpu0: 233.33 MHz, no-parity 512KB WB L2 cache (PB SRAM) at 2:1 ratio
grackle0 at mainbus0
pci0 at grackle0 bus 0
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: Motorola MPC106 "Grackle" Host Bridge (rev. 0x40)
obio0 at pci0 dev 16 function 0: addr 0x80800000
mesh0 at obio0 offset 0x10000 irq 12: 50MHz, SCSI ID 7
scsibus0 at mesh0: 8 targets, 8 luns per target
zsc0 at obio0 offset 0x13000: irq 15,16
zstty0 at zsc0 channel 0
zstty1 at zsc0 channel 1
awacs0 at obio0 offset 0x14000: irq 17,8,9
audio0 at awacs0: full duplex
fdc at obio0 offset 0x15000 not configured
adb0 at obio0 offset 0x16000 irq 18: 0 targets
aed0 at adb0 addr 0: ADB Event device
wdc0 at obio0 offset 0x20000 irq 13: DMA transfer
atabus0 at wdc0 channel 0
wdc1 at obio0 offset 0x21000 irq 14: DMA transfer
atabus1 at wdc1 channel 0
bm0 at obio0 offset 0x11000 irq 42,33: address 00:05:02:d3:e4:d8
lxtphy0 at bm0 phy 0: LXT970 10/100 media interface, rev. 1
lxtphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
nvram0 at obio0 offset 0x60000
ofb0 at pci0 dev 18 function 0: ATI Technologies 3D Rage IIC
ofb0: 800 x 600, 8bpp
wsdisplay0 at ofb0 kbdmux 1: console (std, vt100 emulation)
wsmux1: connecting to wsdisplay0
ohci0 at pci0 dev 20 function 0: Opti 82C861 (rev. 0x10)
ohci0: interrupting at irq 28
ohci0: OHCI version 1.0, legacy support
usb0 at ohci0: USB revision 1.0
uhub0 at usb0
uhub0: Opti OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
scsibus0: waiting 2 seconds for devices to settle...
uhub1 at uhub0 port 2
uhub1: Texas Instruments UT-USB41 hub, class 9/0, rev 1.10/1.10, addr 2
uhub1: 4 ports with 4 removable, self powered
uhidev0 at uhub1 port 1 configuration 1 interface 0
uhidev0: Microsoft Microsoft Internet Keyboard Pro, rev 1.10/1.11, addr 3, iclas
s 3/1
ukbd0 at uhidev0
wd0 at atabus0 drive 0: <WDC AC24300L>
wd0: drive supports 16-sector PIO transfers, LBA addressing
wd0: 4112 MB, 8912 cyl, 15 head, 63 sec, 512 bytes/sect x 8421840 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wd0(wdc0:0:0): using PIO mode 4, DMA mode 2 (using DMA)
atapibus0 at atabus1: 2 targets
cd0 at atapibus0 drive 0: <MATSHITA CR-173, , AD0B> cdrom removable
cd0: drive supports PIO mode 3, DMA mode 1
cd0(wdc1:0:0): using PIO mode 3, DMA mode 1 (using DMA)
wskbd1 at ukbd0: console keyboard, using wsdisplay0
uhidev1 at uhub1 port 1 configuration 1 interface 1
uhidev1: Microsoft Microsoft Internet Keyboard Pro, rev 1.10/1.11, addr 3, iclass 3/0
uhidev1: 2 report ids
uhid0 at uhidev1 reportid 1: input=2, output=0, feature=0
uhid1 at uhidev1 reportid 2: input=1, output=0, feature=0
uhidev2 at uhub1 port 3 configuration 1 interface 0
uhidev2: Logitech USB Mouse, rev 1.10/6.10, addr 4, iclass 3/1
ums0 at uhidev2: 4 buttons and Z dir.
wsmouse0 at ums0 mux 0
boot device: bm0
root on bm0
nfs_boot: trying DHCP/BOOTP
umass0 at uhub1 port 2 configuration 1 interface 0
umass0: Genesys Logic USB TO IDE, rev 2.00/0.02, addr 5
umass0: using SCSI over Bulk-Only
scsibus1 at umass0: 2 targets, 1 lun per target
sd0 at scsibus1 target 0 lun 0: <TOSHIBA, MK2104MAV, 0811> disk fixed
sd0: fabricating a geometry
sd0: 2067 MB, 2067 cyl, 64 head, 32 sec, 512 bytes/sect x 4233600 sectors
bm0: link state changed to UP

>How-To-Repeat:
Install 3.0 or -current on a 1st generation iMac with low memory ( like 64MB ), then build a few packages from pkgsrc. Soon you'll see sh and make dump core, sometimes even inetd and syslogd.
>Fix: