DragonFly kernel List (threaded) for 2007-12
DragonFly BSD
DragonFly kernel List (threaded) for 2007-12
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: DragonFly and Thinpad X61s


From: Hasso Tepper <hasso@xxxxxxxxx>
Date: Mon, 10 Dec 2007 17:31:36 +0200

Hasso Tepper wrote:
> I got a new toy and of course trying to get it all working with
> DragonFly. All went surprisingly good - install with current HEAD,
> snd_hda(4) and em(4) are working fine as does X (Intel 965 chipset).
> 
> All went well until I tried to boot without power supply. It didn't boot
> any more, but just hanged right after detecting SATA controller before
> (while?) detecting harddisk. I played with various settings in BIOS (AHCI
> vs. Compatibility mode) and here are the results:
> 
> HEAD AHCI with AC             - OK
> HEAD AHCI without AC          - hangs after detecting SATA controller

I'm still trying to track it down, but because it seems to be one of
interrupt issues again, it's therefore far beyond my knowledge. I added a
lot of kprintf's in ata channel attach path and found out that hang
happens after ATA_OUTL() call in ata-chipset.c:ata_ahci_allocate():546.
If I add device_printf(dev, "blah\n"); after that, even device name from
this call appears in the dmesg, but not "blah". It's also important that
EXACTLY in the same place where machine hangs without AC, with AC I
ALWAYS get the message:

"intr 10 at 40001/40000 hz, livelock limit engaged!"

IRQ 10 is the interrupt of the SATA controller. Also it might be
important that also machine seems to be hanged completely, rare messages
might appear after hang:

"sched_ithd: stray interrupt 7 on cpu 0" 

> HEAD Compatibility with AC    - hangs before detecting SATA controller
> HEAD Compatibility without AC - hangs before detecting SATA controller

Btw, this isn't 100% case. In 1/3 cases it boots.

Any ideas are still welcome ;). If anyone is interested, I uploaded
verbose dmesg: http://leaf.dragonflybsd.org/~hasso/X61s-dmesg-verbose.txt


-- 
Hasso



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]