Subject: port-sparc64/15202: sparc64 can't handle large file transfers
To: None <gnats-bugs@gnats.netbsd.org>
From: Antti Kantee <pooka@iki.fi>
List: netbsd-bugs
Date: 01/10/2002 21:20:38
>Number: 15202
>Category: port-sparc64
>Synopsis: sparc64 can't handle large file transfers
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: port-sparc64-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Jan 10 11:21:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator: Antti Kantee
>Release: 1.5ZA (beginning of 2002)
>Organization:
>Environment:
Architecture: sparc64
Machine: Ultra10
Symbios 53c875
>Description:
Copying large amounts of stuff from an nfs drive mounted from a i386/1.5ZA
to a local SCSI disk hanging off a 53c875 will eventually panic the system:
panic: psycho0: uncorrectable DMA error AFAR 109821d8 pa ffffffffffffffff AFSR 2700ff0060000000:
2700ff0060000000<P_DTE,S_DTE,S_DWR,P_DWR>
kdb breakpoint at 11e6ff4
Stopped in pid 4 (pagedaemon) at cpu_Debugger+0x4: nop
db> tr
psycho_ue(1dd1b24, 5, e0017910, 9, 11b5aec, bc) at psycho_ue+0x60
sparc_intr_retry(0, fffffffffffffff8, 1000000, 6, 4, ffff0002) at sparc_intr_retry+0x48
_bus_dmamap_unload(1810cc0, 1de1100, 11dba3c, 1810cc0, 11a062c, 0) at _bus_dmamap_unload+0x54
iommu_dvmamap_unload(1de1c00, 1de1b80, 1de1100, 1dd1b00, 8, 11dbaa8) at iommu_dvmamap_unload+0x20
psycho_dmamap_unload(1de1c00, 1de1100, 11b65cc, 1de1c00, 8, 11b6624) at psycho_dmamap_unload+0x14
siop_scsicmd_end(1dec240, 20, e002802c, 80, 4068, 80) at siop_scsicmd_end+0x134
siop_intr(1ddf800, 0, 1, 2, 1e27600, 21) at siop_intr+0x1e98
sparc_intr_retry(7, 7ffffff80, b9fa00, f2f5, 4000, 1000000) at sparc_intr_retry+0x48
pmap_page_protect(0, 1dc1ef0, 121f400, 9, 1806ec8, bc) at pmap_page_protect+0x694
genfs_putpages(3ba000, 903d8d0, 0, 0, 3bc000, ffff0002) at genfs_putpages+0x730
uvn_put(9271a70, 3ba000, 3bc000, 9, 11a062c, 0) at uvn_put+0x34
uvmpd_scan_inactive(1236270, 0, 1236310, 1236270, 1236270, 1236310) at uvmpd_scan_inactive+0x480
uvmpd_scan(13, 0, 2a, 0, 1871e98, 185c948) at uvmpd_scan+0x74
uvm_pageout(9022870, 39, 1871cd0, 0, 0, 0) at uvm_pageout+0xe0
proc_trampoline(0, 0, 0, 0, 0, 0) at proc_trampoline+0x4
db> ps
PID PPID PGRP UID S FLAGS COMMAND WAIT
402 236 401 0 3 0x4086 tar netio
401 236 401 0 2 0x4006 tar
256 255 256 5988 3 0x4082 tcsh ttyin
255 186 186 0 3 0x180 sshd select
236 220 236 0 3 0x4082 csh pause
220 219 220 5988 3 0x4082 tcsh pause
219 186 186 0 3 0x184 sshd select
197 191 191 0 3 0x4084 bootpd select
196 1 196 0 3 0x4082 getty ttyin
194 1 194 0 3 0x80 cron nanosle
191 1 191 0 3 0x80 inetd select
186 1 186 0 3 0x80 sshd select
143 137 137 0 3 0x84 nfsd nfsd
142 137 137 0 3 0x84 nfsd nfsd
141 137 137 0 3 0x84 nfsd nfsd
140 137 137 0 3 0x84 nfsd nfsd
137 1 137 0 3 0x80 nfsd select
129 1 129 0 3 0x80 mountd select
114 1 114 0 3 0x80 mount_mfs mfsidl
111 0 0 0 3 0x20284 nfsio nfsidl
110 0 0 0 3 0x20284 nfsio nfsidl
109 0 0 0 3 0x20284 nfsio nfsidl
db> t/t 0t401
trace: pid 401 at 0x92773d1
preempt(0, 1, 5, 0, 9277c10, ffffffffffffffff) at preempt+0x6c
text_access_fault(9277ed0, 64, 10ebf8, 0, 0, 15761188518) at text_access_fault+0
x244
textfault(27b109, 1764, 27b088, 0, 27b000, 0) at textfault+0x19c
In this case I was copying my NetBSD source nfs server, which includes a
few copies of pkgsrc. It has always paniced when copying one of the larger
distfiles, mozilla source in this latest case.
>How-To-Repeat:
Copy enough large files, eventually it should panic.
>Fix:
Don't know yet, but since this is fairly easy to repeat at least on my
setup, I can poke around a bit, if I get pointers as to what to poke
at.
>Release-Note:
>Audit-Trail:
>Unformatted: