Subject: sun jdk 1.5 appletviewer deadlocks or crashes on 2.0 MP - am I crazy?
To: None <tech-kern@netbsd.org>
From: J Chapman Flack <flack@cs.purdue.edu>
List: tech-kern
Date: 02/21/2005 00:30:13
The Sun JDK 1.5 appletviewer, which I've used for months rock-solid on a
NetBSD 2.0 uniprocessor machine, alternately deadlocks or crashes (a couple
of different ways) when run on a NetBSD 2.0 two-processor ProLiant 800.  It's
quite repeatable.  Have I missed something really basic?  I mean, Sun JDK on
2.0 MP was supposed to be no sweat, wasn't it?

The appletviewer runs fine on the ProLiant if I disable MP support.  (As a
side issue, is there an easy way to disable MP at boot for testing, without
making a separate non-MP kernel?  Neither disable ioapic nor disable cpu in
userconf quite does the trick; some nice static flag in cpu.c that could be
toggled on boot -d would do it.  The easiest way I found was to use the
ProLiant SCU to set the OS type to something other than Solaris or Linux, so
the MPBIOS tables aren't found and the kernel comes up uniprocessor.)

Anybody know a piece of magic I left out?

Thanks,
-Chap

packages:

sun-jdk15-5.0nb2
sun-jre15-5.0nb4
suse_compat-7.3
suse_x11-7.3nb2
suse_base-7.3nb6

dmesg excerpts:

NetBSD 2.0 (lundestad) #6: Sat Feb 19 00:13:15 UTC 2005
	chap@lundestad.anastigmatix.net:/usr/src/sys/arch/i386/compile/lundestad
total memory = 767 MB
avail memory = 746 MB
BIOS32 rev. 0 found at 0xf0000
mainbus0 (root)
mainbus0: Intel MP Specification (Version 1.4) (COMPAQ   PROLIANT    )
cpu0 at mainbus0: apid 1 (boot processor)
cpu0: Intel Pentium III (686-class), 598.21 MHz, id 0x673
cpu0: features 383fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features 383fbff<PGE,MCA,CMOV,PAT,PSE36,MMX>
cpu0: features 383fbff<FXSR,SSE>
cpu0: I-cache 16 KB 32B/line 4-way, D-cache 16 KB 32B/line 4-way
cpu0: L2 cache 512 KB 32B/line 4-way
cpu0: ITLB 32 4 KB entries 4-way, 2 4 MB entries fully associative
cpu0: DTLB 64 4 KB entries 4-way, 8 4 MB entries 4-way
cpu0: calibrating local timer
cpu0: apic clock running at 99 MHz
cpu0: 32 page colors
cpu1 at mainbus0: apid 0 (application processor)
cpu1: starting
cpu1: Intel Pentium III (686-class), 598.18 MHz, id 0x673
cpu1: features 383fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu1: features 383fbff<PGE,MCA,CMOV,PAT,PSE36,MMX>
cpu1: features 383fbff<FXSR,SSE>
cpu1: I-cache 16 KB 32B/line 4-way, D-cache 16 KB 32B/line 4-way
cpu1: L2 cache 512 KB 32B/line 4-way
cpu1: ITLB 32 4 KB entries 4-way, 2 4 MB entries fully associative
cpu1: DTLB 64 4 KB entries 4-way, 8 4 MB entries 4-way
mpbios: bus 0 is type PCI   
mpbios: bus 1 is type PCI   
mpbios: bus 9 is type ISA   
ioapic0 at mainbus0 apid 8 (I/O APIC)
ioapic0: pa 0xfec00000, version 11, 35 pins
ioapic0: misconfigured as apic 0
ioapic0: remapped to apic 8
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82443BX Host Bridge/Controller (AGP disabled) (rev. 0x03)
...
ppb0 at pci0 dev 10 function 0: Digital Equipment DECchip 21152 PCI-PCI Bridge (rev. 0x03)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled, rd/line, wr/inv ok
...
pcib0 at pci0 dev 20 function 0
pcib0: Intel 82371AB PCI-to-ISA Bridge (PIIX4) (rev. 0x02)
...
isa0 at pcib0
...
ioapic0: enabling
...
boot device: ld0
root on ld0a dumps on ld0b
cpu1: CPU 0 running