Date: Wed, 09 Apr 2008 21:43:18 +0900 (JST) From: Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org> To: mickey242@gmx.net Cc: freebsd-acpi@freebsd.org Subject: Re: FreeBSD 7.0 suspend Message-ID: <20080409.214318.132031270.iwasaki@jp.FreeBSD.org> In-Reply-To: <47F8B038.7000400@gmx.net> References: <47F8B038.7000400@gmx.net>
index | next in thread | previous in thread | raw e-mail
Hi,
From: Andreas Wetzel <mickey242@gmx.net>
Subject: FreeBSD 7.0 suspend
Date: Sun, 06 Apr 2008 13:12:56 +0200
Message-ID: <47F8B038.7000400@gmx.net>
> /* If devd(8) is not running, immediately enter the sleep state. */
> if (devctl_process_running() == FALSE) {
> ...
>
> For some reason this check returns FALSE, although devd is actually running.
> When i comment out the check, everything works as expected: devd is notified,
> executes /etc/rc.suspend, which in turn calls acpiconf -k 0 when done, and
> then the system goes to sleep.
>
> Any ideas, why this function does not correctly recognize that devd is
> running?
Please try the following patches and see if the problem is solved.
Thanks!
Index: subr_bus.c
===================================================================
RCS file: /home/ncvs/src/sys/kern/subr_bus.c,v
retrieving revision 1.201.2.1
diff -u -r1.201.2.1 subr_bus.c
--- subr_bus.c 6 Feb 2008 01:34:18 -0000 1.201.2.1
+++ subr_bus.c 9 Apr 2008 12:30:30 -0000
@@ -504,7 +504,7 @@
boolean_t
devctl_process_running(void)
{
- return (devsoftc.async_proc != NULL);
+ return (devsoftc.inuse == 1)
}
/**
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080409.214318.132031270.iwasaki>
