Subject: kern/21888: Radeon VE (7000) hanging during X server shutdown
To: None <>
From: Paulo Alexandre Pinto Pires <>
List: netbsd-bugs
Date: 06/15/2003 01:30:38
>Number:         21888
>Category:       kern
>Synopsis:       Radeon VE (7000) hanging during X server shutdown
>Confidential:   yes
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 15 04:32:00 UTC 2003
>Originator:     Paulo Alexandre Pinto Pires
>Release:        NetBSD 1.6T (2003/06/04)
XFree 4.3.0 from xsrc as of 20030604
System: NetBSD 1.6T NetBSD 1.6T (MATEUS-20030604) #0: Fri Jun 6 21:23:43 BRT 2003 i386
Architecture: i386
Machine: i386
	After upgrading to -current as of 2003/04/29, leaving X causes my
	computer to hang with a black screen, as if the video port had been
	disabled (as the monitor goes into power saving state).

	The computer doesn't seem to be totally frozen: sometimes I can break
	into ddb and 'sync', to recover through a reboot (I do that blindly
	at the console, as I don't have a serial terminal or another computer
	networking with it yet at my new home, thus I can't really inspect
	the machine).  Other times, though, even sync fails, and keyboard
	lights no longer respond (then, I believe, the machine is really dead),
	and I have to hard reboot the machine.

	This strange behavior from the X server happens more than 50% of the
	time, and it not only is annoying, but it can also cause data loss,
	when ddb isn't enough to recover.  I upgraded kernel and userland
	again on 2003/06/04, but this didn't help.  I also got xsrc on that
	same day and built a new X from it, but it had no good result either.

	Yet I cant get traces from ddb and other useful information, one more
	reason that makes me believe this is a kernel problem (besides kernel
	having been the only change made on 2003/04/29) is that other programs,
	whose effect would have been noticeable without video (namely a
	'shutdown -p', scheduled to run two minutes after I logged out from
	X, in an attempt to not having to go into ddb and gamble for a not so
	catastrophic crash) either doesn't run or at least can't complete
	(perhaps at rc.shutdown trying to shutdown a deadlocked X server

	Below are dmesg output and my kernel config file.

		NetBSD 1.6T (MATEUS-20030604) #0: Fri Jun  6 21:23:43 BRT 2003
		total memory = 255 MB
		avail memory = 233 MB
		using 3297 buffers containing 13188 KB of memory
		BIOS32 rev. 0 found at 0xf0520
		mainbus0 (root)
		cpu0 at mainbus0: (uniprocessor)
		cpu0: Intel Pentium II (686-class), 334.12 MHz, id 0x651
		cpu0: features 183f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR>
		cpu0: features 183f9ff<PGE,MCA,CMOV,PAT,PSE36,MMX>
		cpu0: features 183f9ff<FXSR>
		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: 32 page colors
		acpi0 at mainbus0
		acpi0: X/RSDT: OemId <ASUS  ,P2B     ,58582e31>, AslId <ASUS,31303030>
		acpi0: SCI interrupting at int 9
		acpi0: fixed-feature power button present
		ACPI Object Type 'Processor' (0x0c) at acpi0 not configured
		acpibut0 at acpi0 (PNP0C0C): ACPI Power Button
		PNP0C01 at acpi0 not configured
		PNP0C0F at acpi0 not configured
		PNP0C0F at acpi0 not configured
		PNP0C0F at acpi0 not configured
		PNP0C0F at acpi0 not configured
		PNP0A03 at acpi0 not configured
		PNP0C02 at acpi0 not configured
		PNP0000 at acpi0 not configured
		PNP0200 at acpi0 not configured
		PNP0100 at acpi0 not configured
		PNP0B00 at acpi0 not configured
		PNP0800 at acpi0 not configured
		npx0 at acpi0 (PNP0C04)
		npx0: io 0xf0-0xff irq 13
		npx0: using exception 16
		fdc0 at acpi0 (PNP0700)
		fdc0: io 0x3f2-0x3f5,0x3f7 irq 6 drq 2
		fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
		lpt0 at acpi0 (PNP0400)
		lpt0: io 0x378-0x37b irq 7
		com0 at acpi0 (PNP0501-1)
		com0: io 0x3f8-0x3ff irq 4
		com0: ns16550a, working fifo
		com1 at acpi0 (PNP0501-2)
		com1: io 0x2f8-0x2ff irq 3
		com1: ns16550a, working fifo
		pckbc0 at acpi0 (PNP0303): kbd port
		pckbc0: io 0x60,0x64 irq 1
		pckbd0 at pckbc0 (kbd slot)
		pckbc0: using irq 1 for kbd slot
		wskbd0 at pckbd0: console keyboard
		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 (rev. 0x02)
		agp0 at pchb0: aperture at 0xe4000000, size 0x4000000
		ppb0 at pci0 dev 1 function 0: Intel 82443BX AGP Interface (rev. 0x02)
		pci1 at ppb0 bus 1
		pci1: i/o space, memory space enabled
		vga0 at pci1 dev 0 function 0: ATI Technologies Radeon 7000/VE (rev. 0x00)
		wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
		wsmux1: connecting to wsdisplay0
		wsdisplay0: screen 1-7 added (80x25, vt100 emulation)
		pcib0 at pci0 dev 4 function 0
		pcib0: Intel 82371AB PCI-to-ISA Bridge (PIIX4) (rev. 0x02)
		pciide0 at pci0 dev 4 function 1: Intel 82371AB IDE controller (PIIX4) (rev. 0x01)
		pciide0: bus-master DMA support present
		pciide0: primary channel wired to compatibility mode
		wd0 at pciide0 channel 0 drive 0: <ST360021A>
		wd0: drive supports 16-sector PIO transfers, LBA addressing
		wd0: 57241 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 117231408 sectors
		wd0: 32-bit data port
		wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
		pciide0: primary channel interrupting at irq 14
		wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
		pciide0: secondary channel wired to compatibility mode
		atapibus0 at pciide0 channel 1: 2 targets
		cd0 at atapibus0 drive 0: <ATAPI CDROM, CXD3030  <OPTOMEDIA, 1.21> cdrom removable
		cd0: 32-bit data port
		cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
		cd1 at atapibus0 drive 1: <HL-DT-ST RW/DVD GCC-4320B, , 1.00> cdrom removable
		cd1: 32-bit data port
		cd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
		pciide0: secondary channel interrupting at irq 15
		cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
		cd1(pciide0:1:1): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
		uhci0 at pci0 dev 4 function 2: Intel 82371AB USB Host Controller (PIIX4) (rev. 0x01)
		uhci0: interrupting at irq 9
		usb0 at uhci0: USB revision 1.0
		uhub0 at usb0
		uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
		uhub0: 2 ports with 2 removable, self powered
		Intel 82371AB Power Management Controller (PIIX4) (miscellaneous bridge, revision 0x02) at pci0 dev 4 function 3 not configured
		unknown vendor 0xe159 product 0x0001 (miscellaneous network) at pci0 dev 9 function 0 not configured
		ahc0 at pci0 dev 10 function 0
		ahc0: interrupting at irq 12
		ahc0: aic7880: Ultra Wide Channel A, SCSI Id=7, 16/253 SCBs
		scsibus0 at ahc0: 16 targets, 8 luns per target
		puc0 at pci0 dev 11 function 0: US Robotics (3Com) 3CP5609 PCI 16550 Modem (com)
		com2 at puc0 port 0: interrupting at irq 10
		com2: ns16550a, working fifo
		ne0 at pci0 dev 12 function 0: RealTek 8029 Ethernet
		ne0: Ethernet address 00:00:21:61:8c:7e
		ne0: 10base2, 10baseT, 10baseT-FDX, auto, default [0x00 0x30] auto
		ne0: interrupting at irq 11
		isa0 at pcib0
		lm0 at isa0 port 0x290-0x297: W83781D
		pcppi0 at isa0 port 0x61
		midi0 at pcppi0: PC speaker
		spkr0 at pcppi0
		sysbeep0 at pcppi0
		isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
		isapnp0: read port 0x203
		sb0 at isapnp0 port 0x220/16,0x330/2,0x388/4 irq 5 drq 1,5
		sb0: Creative SB32 PnP Audio: dsp v4.16
		audio0 at sb0: full duplex, mmap, independent
		mpu0 at sb0
		midi1 at mpu0: SB MPU-401 MIDI UART
		opl0 at sb0: model OPL3
		midi2 at opl0: SB Yamaha OPL3
		joy0 at isapnp0 port 0x200/8
		joy0: Creative SB32 PnP Game
		joy0: joystick connected
		isapnp0: <Creative SB32 PnP, CTL0021, , WaveTable> port 0x620/4 not configured
		scsibus0: waiting 2 seconds for devices to settle...
		uhidev0 at uhub0 port 2 configuration 1 interface 0
		uhidev0: Microsoft Microsoft IntelliMouseM-. Explorer, rev 1.10/1.21, addr 2, iclass 3/1
		ums0 at uhidev0: 5 buttons and Z dir.
		wsmouse0 at ums0 mux 0
		sd0 at scsibus0 target 5 lun 0: <IOMEGA, ZIP 100, D.09> disk removable
		sd0: drive offline
		sd0: async, 8-bit transfers
		boot device: wd0
		root on wd0a dumps on wd0b
		root file system type: ffs
		IP Filter: v3.4.29 initialized.  Default = block all, Logging = enabled
		Accounting started

	- - - - - - - - -

		include 	"arch/i386/conf/std.i386"
		maxusers	32
		options 	I686_CPU
		options 	VM86
		options 	USER_LDT
		options 	MTRR
		options 	INSECURE
		options 	RTC_OFFSET=180
		options 	KTRACE
		options 	SYSVMSG
		options 	SYSVSEM
		options 	SYSVSHM
		options 	P1003_1B_SEMAPHORE
		options 	LKM
		options 	DDB
		options 	DDB_HISTORY_SIZE=512
		options 	COMPAT_12
		options 	COMPAT_13
		options 	COMPAT_14
		options 	COMPAT_15
		options 	COMPAT_43
		options 	COMPAT_386BSD_MBRPART
		options 	COMPAT_LINUX
		file-system 	FFS
		file-system 	NFS
		file-system 	CD9660
		file-system 	MSDOSFS
		file-system 	FDESC
		file-system 	KERNFS
		file-system 	PROCFS
		options 	QUOTA
		options 	SOFTDEP
		options 	NFSSERVER
		options 	GATEWAY
		options 	INET
		options 	PPP_BSDCOMP
		options 	PPP_DEFLATE
		options 	PPP_FILTER
		options 	PFIL_HOOKS
		options 	IPFILTER_LOG
		options 	PCIVERBOSE
		options 	WSEMUL_VT100
		config		netbsd	root on ? type ?
		mainbus0 at root
		cpu* at mainbus?
		ioapic* at mainbus?
		options 	MPACPI
		acpi0 		at mainbus0
		acpiacad* 	at acpi?
		acpibat* 	at acpi?
		acpibut* 	at acpi?
		acpiec* 	at acpi?
		acpilid* 	at acpi?
		acpitz* 	at acpi?
		com* 		at acpi?
		fdc* 		at acpi?
		lpt* 		at acpi?
		npx*		at acpi?
		pckbc*  	at acpi?
		pci*	at mainbus? bus ?
		pci*	at pchb? bus ?
		pci*	at ppb? bus ?
		elansc* at pci? dev ? function ?
		pchb*	at pci? dev ? function ?
		pcib*	at pci? dev ? function ?
		ppb*	at pci? dev ? function ?
		puc*	at pci? dev ? function ?
		agp* 	at pchb?
		isa0	at pcib?
		isapnp0	at isa?
		pckbd*		at pckbc?
		pms*		at pckbc?
		vga*		at pci? dev ? function ?
		wsdisplay*	at vga? console ?
		wskbd*		at pckbd? console ?
		wsmouse*	at pms? mux 0
		pcppi0		at isa?
		sysbeep0	at pcppi?
		com*	at puc? port ?
		lm0	at isa?	port 0x290
		ahc*	at pci? dev ? function ?
		scsibus* at scsi?
		sd*	at scsibus? target ? lun ?
		pciide* at pci? dev ? function ? flags 0x0000
		wd*	at pciide? channel ? drive ? flags 0x0000
		atapibus* at atapi?
		cd*	at atapibus? drive ? flags 0x0000
		fd*	at fdc? drive ?
		ne*	at pci? dev ? function ?
		uhci*	at pci?	dev ? function ?
		usb*	at uhci?
		uhub*	at usb?
		uhub*	at uhub? port ? configuration ? interface ?
		uhidev*	at uhub? port ? configuration ? interface ?
		ums*	at uhidev? reportid ?
		wsmouse* at ums? mux 0
		ulpt*	at uhub? port ? configuration ? interface ?
		umass*	at uhub? port ? configuration ? interface ?
		wd* at umass?
		ugen*	at uhub? port ?
		sb*	at isapnp?
		opl*	at sb?
		audio*	at audiobus?
		mpu*	at sb?
		midi*	at midibus?
		midi*	at pcppi?
		spkr0	at pcppi?
		joy*	at isapnp?
		include	"arch/i386/conf/GENERIC.local"
		pseudo-device	ccd		4
		pseudo-device	vnd		4
		pseudo-device	bpfilter	8
		pseudo-device	ipfilter
		pseudo-device	loop
		pseudo-device	ppp		2
		pseudo-device	tun		2
		pseudo-device	bridge
		pseudo-device	pty
		pseudo-device	sequencer	3
		pseudo-device	rnd
		pseudo-device	clockctl
		pseudo-device	wsmux
		pseudo-device	wsfont
		pseudo-device	ksyms

	Boot to xdm with a Radeon VE card and log out from a session.

	Unknown, and all work-arounds I tried failed.