Date: Mon, 07 Feb 2005 10:36:21 -0800 From: Nate Lawson <nate@root.org> To: "Matthew N. Dodd" <mdodd@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/ata ata-all.c Message-ID: <4207B525.1050308@root.org> In-Reply-To: <20050207171448.1007516A56B@hub.freebsd.org> References: <20050207171448.1007516A56B@hub.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Matthew N. Dodd wrote: > mdodd 2005-02-07 17:14:42 UTC > > FreeBSD src repository > > Modified files: > sys/dev/ata ata-all.c > Log: > Avoid using tsleep() in the resume path as it may result in the > system hanging if timer interrupts aren't running yet. > > This allows my Thinkpad to resume successfully with APM. > > Approved by: sos > MFC after: 2 weeks > > Revision Changes Path > 1.235 +4 -1 src/sys/dev/ata/ata-all.c Thank you! I grabbed the following backtrace when my system started hanging for about 30 seconds in the resume path and was going to look into fixing it: sched_switch() mi_switch() sleepq_switch() sleepq_timedwait() msleep() ata_udelay+0x5d ata_generic_reset+0x546 ata_reinit+0x104 ata_resume+0x2e ... -- Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4207B525.1050308>