Subject: Re: help please? - dma/SCSI error
To: None <Matt.Levin@Blink.com, port-sparc@NetBSD.org>
From: None <eeh@netbsd.org>
List: port-sparc
Date: 04/25/2001 18:05:04
	I am trying to upgrade a sparc5 running 1.5H to 1.5U. my method for doing this
	has been to attach an external drive, boot off that, then use tar to copy the
	new binaries to my internal drive. I start the process, tar starts copying
	files, and then this:


	NMI: system interrupts: 40000000<VME=0,SBUS=0,ME>

Hm.  Looks like a DMA fault.

	dma0: error: csr=a4440212<ERR,DRAINING=0,IEN,ENDMA,BURST=1,FASTER,ALOADED>

	esp0: DMA error; resetting

	esp0: waiting for SCSI Bus Reset to happen

	dma0: error: csr=a4440212<ERR,DRAINING=0,IEN,ENDMA,BURST=1,FASTER,ALOADED>

	esp0: DMA error; resetting

	<repeat ad-infinitum>

	at which point the machine is dead and I have to power cycle, fsck all the
	partitions, etc...

	i also get this error occasionally on shutdown when syncing the disk.

	basically this seems to happen whenever the scsi bus/disk gets heavily
	exercised. but during day to day operation, everything is fine.

	here's info on the internal drive:

	sd0 at scsibus0 target 3 lun 0: <IBM, DCAS32160SUN2.1G, S65A> SCSI2 0/direct
	fixed
	sd0: 2063 MB, 8188 cyl, 3 head, 172 sec, 512 bytes/sect x 4226725 sectors

	this is the OEM drive that came with the system.

	any ideas? help would be appreciated

I would guess that this is an IOMMU issue more than anything else.
Unfortunately, my familliarity with the sun4m IOMMU code is less than
ideal.  I would suggest dumping both the address the driver is trying
to DMA to and the contents of the IOMMU when you get this problem.  I
suspect that the page is not mapped.

Eduardo