Date: Wed, 15 Jun 2005 09:14:32 GMT From: Sebastian Koehler <acex5@thrillkill.de> To: freebsd-gnats-submit@FreeBSD.org Subject: sparc64/82261: DMA-support on Sparc64 broken Message-ID: <200506150914.j5F9EWXb058079@www.freebsd.org> Resent-Message-ID: <200506150920.j5F9KHm4021094@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 82261 >Category: sparc64 >Synopsis: DMA-support on Sparc64 broken >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-sparc64 >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jun 15 09:20:16 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Sebastian Koehler >Release: 6.0-CURRENT-SNAP004 >Organization: >Environment: FreeBSD 6.0-20050601-SNAP FreeBSD 6.0-20050601-SNAP #0: Thu Jun 2 05:29:17 UTC 2005 root@u60.samsco.home:/usr/obj/usr/src/sys/GENERIC sparc64 >Description: A clean installation using FreeBSD media cause errors when DMA mode is used to access the IDE disks. messages during installation: ad0: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=2570528 ad0: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=2570624 ad0: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=2574752 if system is installed using hw.ata.ata_dma=0 the following happens, when system is booted with DMA enabled: dc1: Ethernet address: 00:03:ba:0f:22:55 dc1: if_start running deferred for Giant dc1: [GIANT-LOCKED] pci0: <serial bus, USB> at device 10.0 (no driver attached) atapci0: <AcerLabs M5229 UDMA66 controller> port 0x10200-0x10207,0x10218-0x1021b,0x10210-0x10217,0x10208-0x1020b,0x10220-0x1022f at device 13.0 on pci0 ata2: <ATA channel 0> on atapci0 ata3: <ATA channel 1> on atapci0 stray level interrupt 14 rtc0: <Real Time Clock> at port 0x70-0x71 on isa0 uart0: <16550 or compatible> at port 0x3f8-0x3ff irq 43 on isa0 uart0: console (9600,n,8,1) uart1: <16550 or compatible> at port 0x2e8-0x2ef irq 43 on isa0 Timecounters tick every 1.000 msec ad0: 38166MB <Seagate ST340824A 3.28> at ata2-master UDMA66 acd0: CDRW <RICOH CD-R/RW MP7200A/1.30> at ata3-master UDMA33 Trying to mount root from ufs:/dev/ad0a /libexec/ld-elf.so.1: /lib/libncurses.so.5: invalid file format Enter full pathname of shell or RETURN for /bin/sh: or: dc1: Ethernet address: 00:03:ba:0f:22:55 dc1: if_start running deferred for Giant dc1: [GIANT-LOCKED] pci0: <serial bus, USB> at device 10.0 (no driver attached) atapci0: <AcerLabs M5229 UDMA66 controller> port 0x10200-0x10207,0x10218-0x1021b,0x10210-0x10217,0x10208-0x1020b,0x10220-0x1022f at device 13.0 on pci0 ata2: <ATA channel 0> on atapci0 ata3: <ATA channel 1> on atapci0 stray level interrupt 14 rtc0: <Real Time Clock> at port 0x70-0x71 on isa0 uart0: <16550 or compatible> at port 0x3f8-0x3ff irq 43 on isa0 uart0: console (9600,n,8,1) uart1: <16550 or compatible> at port 0x2e8-0x2ef irq 43 on isa0 Timecounters tick every 1.000 msec ad0: 38166MB <Seagate ST340824A 3.28> at ata2-master UDMA66 acd0: CDRW <RICOH CD-R/RW MP7200A/1.30> at ata3-master UDMA33 Trying to mount root from ufs:/dev/ad0a init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call init in malloc(): error: recursive call system is working fine with hw.ata.ata_dma=0: dc1: Ethernet address: 00:03:ba:0f:22:55 dc1: if_start running deferred for Giant dc1: [GIANT-LOCKED] pci0: <serial bus, USB> at device 10.0 (no driver attached) atapci0: <AcerLabs M5229 UDMA66 controller> port 0x10200-0x10207,0x10218-0x1021b,0x10210-0x10217,0x10208-0x1020b,0x10220-0x1022f at device 13.0 on pci0 ata2: <ATA channel 0> on atapci0 ata3: <ATA channel 1> on atapci0 rtc0: <Real Time Clock> at port 0x70-0x71 on isa0 uart0: <16550 or compatible> at port 0x3f8-0x3ff irq 43 on isa0 uart0: console (9600,n,8,1) uart1: <16550 or compatible> at port 0x2e8-0x2ef irq 43 on isa0 Timecounters tick every 1.000 msec ad0: 38166MB <Seagate ST340824A 3.28> at ata2-master PIO4 acd0: CDRW <RICOH CD-R/RW MP7200A/1.30> at ata3-master UDMA33 Trying to mount root from ufs:/dev/ad0a Loading configuration files. Entropy harvesting: interrupts ethernet point_to_point kickstart. swapon: adding /dev/ad0b as swap device Starting file system checks: /dev/ad0a: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad0a: clean, 102079 free (975 frags, 12638 blocks, 0.8% fragmentation) /dev/ad0e: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad0e: clean, 127341 free (29 frags, 15914 blocks, 0.0% fragmentation) /dev/ad0f: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad0f: clean, 17986047 free (4295 frags, 2247719 blocks, 0.0% fragmentation) /dev/ad0d: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad0d: clean, 127258 free (42 frags, 15902 blocks, 0.0% fragmentation) >How-To-Repeat: Try to access IDE drives in a Sun Netra X1 using DMA mode. Tested FreeBSD installation media 5.3-RELEASE and 6.0-CURRENT-SNAP004. Earlier releases no testet. >Fix: If DMA is not used (hw.ata.ata_dma=0 in bootloader) the messages go away and access to HDD is possible without errors, but only in PIO4. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200506150914.j5F9EWXb058079>