Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Nov 2004 10:27:10 +0300
From:      Andrew Belashov <bel@orel.ru>
To:        Gleb Smirnoff <glebius@freebsd.org>
Cc:        freebsd-mobile@freebsd.org
Subject:   Re: Trouble with APM suspend in 5.3-R
Message-ID:  <41985A4E.7050406@orel.ru>
In-Reply-To: <20041110111615.GB54769@cell.sick.ru>
References:  <41904661.nail8S61G6SLH@mail.com> <20041109075144.GB41761@cell.sick.ru> <4191F77C.1090606@orel.ru> <20041110111615.GB54769@cell.sick.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Gleb Smirnoff wrote:
> On Wed, Nov 10, 2004 at 02:11:56PM +0300, Andrew Belashov wrote:
> A> >1) Merge revision 1.233 of ata-all.c to your 5.3-RELEASE ata-all.c
> A> 
> A> This revision helped me two weeks ago. Now, suspending worked correctly,
> A> but resume does not work. Kernel panics by kernel stack overflow.
> A> I do't have full back trace, but manualy reconstructed:
> 
> To fix resume you need ata-all.patch. I've sent it to list recently.

After resolving problem with kernel stack overflow, I have applied
ata-all.patch. It really solves a problem!

However, problems of a similar nature arise if USB CardBus inserted.
System freeze when resumed and sleep in "usbdly". From sources:

---[sys/dev/usb/usb_subr.c]---------
/* Delay for a certain number of ms */
void
usb_delay_ms(usbd_bus_handle bus, u_int ms)
{
	/* Wait at least two clock ticks so we know the time has passed. */
	if (bus->use_polling || cold)
		delay((ms+1) * 1000);
	else
		tsleep(&ms, PRIBIO, "usbdly", (ms*hz+999)/1000 + 1);
}
---[sys/dev/usb/usb_subr.c]---------



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41985A4E.7050406>