Re: Tracking down ata0 reset hang

From: Soren Schmidt <sos_at_spider.deepcore.dk>
Date: Fri, 12 Dec 2003 08:30:16 +0100 (CET)
It seems Jesse Guardiani wrote:
> Nate Lawson wrote:
> 
> > I have a laptop that suspends and resumes fine.  Soeren's patch to
> > properly reset the hardware after the ATAng import fixed the problem where
> > resuming would hang in ata0 reset with the hard drive light on.
> > 
> > Sometime in the last month or two, the ATA reset phase of resume has begun
> > hanging again with the drive light on and I can't break to the debugger.
> > The interesting data point is that if I suspend/resume in single user
> > mode, it works fine, including the reset.  But in multi-user mode, it
> > hangs.  I'm trying to disable various services to see if any of them
> > triggers the hang.
> > 
> > Has anyone else seen this regression?

I cant suspend/resume at all on my ASUS, it locks up somwhere long before
it gets to ATA. However it worked on my old Dell until about a month ago
when it ended its lifetime. 

> I know you've already replied to one of my previous emails on this subject,
> but I thought I'd chime in with my info here just in case this thread actually
> catches Soren's attention. :) I've been yelling about this regression as loud
> as I dare without potentially annoying any developers capable of fixing it.
> I even opened a PR (misc/59876).
> 
> Here are two of my most recent emails about it:
> 
>     http://article.gmane.org/gmane.os.freebsd.current/35631
> 
>     http://article.gmane.org/gmane.os.freebsd.current/35660
> 
> My laptop is an IBM Thinkpad A30p. Here's my boot -v dmesg.boot:
> 
>     http://www.wingnet.net/~jesse/freebsd-5.2-rc1.dmesg.boot
> 
> Also, I've noticed, like you, that I can suspend and resume fine as long as
> apmd isn't running and the kernel doesn't try to "cleanly" reset the ATA channels.
> 
> I think it's an ATAng thing because my `acpiconf -s 3` worked in 5.1-RELEASE,
> but now it too is busted in 5.2-BETA and 5.2-RC1.
> 
> And finally, I even went so far as to update my:
> 
>     /usr/src/sys/dev/ata/ata-lowlevel.c
> 
> To version 1.25 (5.2-RC1 ships with v1.24) from CVS and recompile my kernel,
> but I still hang in the exact same way on resume.

I dont think this is an ATA issue, I think the new acpi/interrupt code is
not setting up things as they should on resume. That said I'm interested
in getting this to work as well, but so far I dont even make it to ATA during
resume...

-Søren
                       .. but it works under windows!!
Received on Thu Dec 11 2003 - 22:31:33 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:33 UTC