Solved After 10.0 upgrade ata/DMA errors [solved]

Hi,

I run FreeBSD on my ThinkPad T60. 9.2 did run quite fine.

Now, after 10.0, the machine boots fine, however I get the console full of:

Code:
ata1: FAILURE - zero length DMA transfer attempted
ata1: setting up DMA failed

The machine "seems" to work, but I get tons of them. I open another console and network, X11. do seem to work.

Ideas? Suggestions?

Riccardo
 
Re: After 10.0 upgrade ata/DMA errors

I run the laptop for a couple of days, it seems fairly stable, although the console is flooded with these messages.
Since it is ata1, I suppose the problem is with the CDROM? I tried mounting a CD and it seems to work, I did not attempt to write cd/dvd's yet

This starts to look like a kernel bug.

this is my dmesg:

Code:
Copyright (c) 1992-2014 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 10.0-RELEASE #0 r260789: Fri Jan 17 01:46:25 UTC 2014
    root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC i386
FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610
CPU: Genuine Intel(R) CPU           T2300  @ 1.66GHz (1662.54-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x6e8  Family = 0x6  Model = 0xe  Stepping = 8
  Features=0xbfe9fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
  Features2=0xc1a9<SSE3,MON,VMX,EST,TM2,xTPR,PDCM>
  AMD Features=0x100000<NX>
  TSC: P-state invariant, performance statistics
real memory  = 2147483648 (2048 MB)
avail memory = 2076049408 (1979 MB)
Event timer "LAPIC" quality 400
ACPI APIC Table: <LENOVO TP-79   >
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 2 core(s)
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP): APIC ID:  1
ACPI BIOS Warning (bug): 32/64X length mismatch in FADT/Gpe1Block: 0/32 (20130823/tbfadt-601)
ACPI BIOS Warning (bug): Optional FADT field Gpe1Block has zero address or length: 0x000000000000102C/0x0 (20130823/tbfadt-630)
ioapic0: Changing APIC ID to 1
ioapic0 <Version 2.0> irqs 0-23 on motherboard
kbd1 at kbdmux0
random: <Software, Yarrow> initialized
acpi0: <LENOVO TP-79> on motherboard
CPU0: local APIC error 0x40
acpi_ec0: <Embedded Controller: GPE 0x1c, ECDT> port 0x62,0x66 on acpi0
acpi0: Power Button (fixed)
acpi0: reservation of 0, a0000 (3) failed
acpi0: reservation of 100000, 7ff00000 (3) failed
cpu0: <ACPI CPU> on acpi0
cpu1: <ACPI CPU> on acpi0
attimer0: <AT timer> port 0x40-0x43 irq 0 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 950
Event timer "HPET" frequency 14318180 Hz quality 450
Event timer "HPET1" frequency 14318180 Hz quality 440
Event timer "HPET2" frequency 14318180 Hz quality 440
atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0
Event timer "RTC" frequency 32768 Hz quality 0
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_button0: <Sleep Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
vgapci0: <VGA-compatible display> port 0x1800-0x1807 mem 0xee100000-0xee17ffff,0xd0000000-0xdfffffff,0xee200000-0xee23ffff irq 16 at device 2.0 on pci0
agp0: <Intel 82945GM (945GM GMCH) SVGA controller> on vgapci0
agp0: aperture size is 256M, detected 7932k stolen memory
vgapci0: Boot video device
vgapci1: <VGA-compatible display> mem 0xee180000-0xee1fffff at device 2.1 on pci0
hdac0: <Intel 82801G HDA Controller> mem 0xee240000-0xee243fff irq 17 at device 27.0 on pci0
pcib1: <ACPI PCI-PCI bridge> irq 20 at device 28.0 on pci0
pci2: <ACPI PCI bus> on pcib1
em0: <Intel(R) PRO/1000 Network Connection 7.3.8> port 0x2000-0x201f mem 0xee000000-0xee01ffff irq 16 at device 0.0 on pci2
em0: Using an MSI interrupt
em0: Ethernet address: 00:16:41:aa:72:a2
pcib2: <ACPI PCI-PCI bridge> irq 21 at device 28.1 on pci0
pci3: <ACPI PCI bus> on pcib2
wpi0: <Intel(R) PRO/Wireless 3945ABG> mem 0xedf00000-0xedf00fff irq 17 at device 0.0 on pci3
pcib3: <ACPI PCI-PCI bridge> irq 22 at device 28.2 on pci0
pci4: <ACPI PCI bus> on pcib3
pcib4: <ACPI PCI-PCI bridge> irq 23 at device 28.3 on pci0
pci12: <ACPI PCI bus> on pcib4
uhci0: <Intel 82801G (ICH7) USB controller USB-A> port 0x1820-0x183f irq 16 at device 29.0 on pci0
usbus0 on uhci0
uhci1: <Intel 82801G (ICH7) USB controller USB-B> port 0x1840-0x185f irq 17 at device 29.1 on pci0
usbus1 on uhci1
uhci2: <Intel 82801G (ICH7) USB controller USB-C> port 0x1860-0x187f irq 18 at device 29.2 on pci0
usbus2 on uhci2
uhci3: <Intel 82801G (ICH7) USB controller USB-D> port 0x1880-0x189f irq 19 at device 29.3 on pci0
usbus3 on uhci3
ehci0: <Intel 82801GB/R (ICH7) USB 2.0 controller> mem 0xee444000-0xee4443ff irq 19 at device 29.7 on pci0
usbus4: EHCI version 1.0
usbus4 on ehci0
pcib5: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci21: <ACPI PCI bus> on pcib5
cbb0: <TI1510 PCI-CardBus Bridge> mem 0xe4300000-0xe4300fff irq 16 at device 0.0 on pci21
cardbus0: <CardBus bus> on cbb0
pccard0: <16-bit PCCard bus> on cbb0
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH7M SATA150 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x18b0-0x18bf at device 31.2 on pci0
ata0: <ATA channel> at channel 0 on atapci0
ata1: <ATA channel> at channel 1 on atapci0
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
acpi_tz0: <Thermal Zone> on acpi0
acpi_tz1: <Thermal Zone> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model Generic PS/2 mouse, device ID 0
battery0: <ACPI Control Method Battery> on acpi0
acpi_acad0: <AC Adapter> on acpi0
pmtimer0 on isa0
orm0: <ISA Option ROMs> at iomem 0xcf000-0xcffff,0xd0000-0xd0fff,0xdc000-0xdffff,0xe0000-0xeffff pnpid ORM0000 on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
ppc0: cannot reserve I/O port range
est0: <Enhanced SpeedStep Frequency Control> on cpu0
p4tcc0: <CPU Frequency Thermal Control> on cpu0
est1: <Enhanced SpeedStep Frequency Control> on cpu1
p4tcc1: <CPU Frequency Thermal Control> on cpu1
Timecounters tick every 1.000 msec
hdacc0: <Analog Devices AD1981HD HDA CODEC> at cad 0 on hdac0
hdaa0: <Analog Devices AD1981HD Audio Function Group> at nid 1 on hdacc0
pcm0: <Analog Devices AD1981HD (Analog)> at nid 5 and 25,8 on hdaa0
pcm1: <Analog Devices AD1981HD (Rear Digital)> at nid 10 on hdaa0
hdacc1: <Conexant (0x2bfa) HDA CODEC> at cad 1 on hdac0
unknown: <Conexant (0x2bfa) HDA CODEC Modem Function Group> at nid 2 on hdacc1 (no driver attached)
random: unblocking device.
usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 12Mbps Full Speed USB v1.0
usbus4: 480Mbps High Speed USB v2.0
ugen2.1: <Intel> at usbus2
uhub0: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus2
ugen1.1: <Intel> at usbus1
uhub1: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
ugen0.1: <Intel> at usbus0
uhub2: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen4.1: <Intel> at usbus4
uhub3: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus4
ugen3.1: <Intel> at usbus3
uhub4: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus3
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub4: 2 ports with 2 removable, self powered
ada0 at ata0 bus 0 scbus0 target 0 lun 0
ada0: <HTS541040G9SA00 MB2IC60H> ATA-7 SATA 1.x device
ada0: Serial Number MPBBP0X2JPNNBM
ada0: 150.000MB/s transfers (SATA, UDMA5, PIO 8192bytes)
ada0: 38154MB (78140160 512 byte sectors: 16H 63S/T 16383C)
ada0: Previously was known as ad0
cd0 at ata1 bus 0 scbus1 target 0 lun 0
cd0: <MATSHITA DVD-ROM UJDA775 DA03> Removable CD-ROM SCSI-0 device
cd0: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 65534bytes)
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed
SMP: AP CPU #1 Launched!
Root mount waiting for: usbus4
Root mount waiting for: usbus4
uhub3: 8 ports with 8 removable, self powered
Trying to mount root from ufs:/dev/ada0p2 [rw]...
ata1: FAILURE - zero length DMA transfer attempted
ata1: setting up DMA failed
ata1: FAILURE - zero length DMA transfer attempted
<....>
 
Re: After 10.0 upgrade ata/DMA errors

I thought I did, put I think I have a problem with portupgrade. I am checking my packages with pkg_libchk.

If I run portupgrade -ayrf hal

I get a lot of these warnings:
Code:
make: "/usr/ports/Mk/bsd.xorg.mk" line 166: warning: Couldn't read shell's output for "/usr/local/bin/X -version 2>&1 | sed -n 's;^X\.Org X Server \([^ ]*\).*;\1;p'"

Perhaps this is why some packages did not upgrade. It is building now as I write though.
 
Re: After 10.0 upgrade ata/DMA errors

That error has been mentioned on the mailing lists, although I can't remember which, or whether there was a solution. It's probably not related to HAL.
 
Re: After 10.0 upgrade ata/DMA errors

Issuing portupgradeof hal, I had it rebuild. However, if I rerun pgk_libchk, I still find errors:

Code:
hal-0.5.14_22: /usr/local/libexec/hald-probe-usb2-device misses libusb.so.2
hal-0.5.14_22: /usr/local/libexec/hald-probe-usb2-interface misses libusb.so.2
hal-0.5.14_22: /usr/local/sbin/hald misses libusb.so.2

I wonder how a rebuitl package can still have missing libraries!

Riccardo
 
Re: After 10.0 upgrade ata/DMA errors

libusb is part of the base system, not part of hal.

Code:
$ ls -al /usr/lib/libusb.*
-r--r--r--  1 root  wheel  109474 Jan 16 17:39 /usr/lib/libusb.a
lrwxr-xr-x  1 root  wheel      11 Jan 16 17:39 /usr/lib/libusb.so -> libusb.so.3
-r--r--r--  1 root  wheel   79208 Jan 16 17:39 /usr/lib/libusb.so.3
The fact that your hal binaries are looking for libusb.so.2 indicates that it might not of been rebuilt.

Code:
$ ldd /usr/local/sbin/hald | grep usb
        libusb.so.3 => /usr/lib/libusb.so.3 (0x801abb000)
Is what you should be seeing.
 
Re: After 10.0 upgrade ata/DMA errors

dpejesh said:
The fact that your hal binaries are looking for libusb.so.2 indicates that it might not of been rebuilt.
@@dpejesh beat me to it, but I agree. Try rebuilding sysutils/hal using:
Code:
portsnap fetch update
cd /usr/ports/sysutils/hal
script /tmp/hal
make reinstall clean
I suggest saving the output of the re-install to a typescript file in case we need it. Don't forget to issue an exit after the re-installation completes to close out the typescript file.
 
Last edited by a moderator:
Re: After 10.0 upgrade ata/DMA errors

I solved the rebuild of hal by using portupgrade -f and not portupgrade -afry

I do wonder! however pkg_libchck confirms it is fixed and also now I get no more errors! problem solved. (Library check shows I still have another outdated package, but I will rebuild it directly with -f)

Thanks

Riccardo
 
Back
Top