Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 02 Apr 2005 11:38:25 +0800
From:      Dinesh Nair <dinesh@alphaque.com>
To:        John Baldwin <jhb@freebsd.org>
Cc:        freebsd-acpi@freebsd.org
Subject:   Re: enable acpi
Message-ID:  <424E13B1.4090607@alphaque.com>
In-Reply-To: <c7f48b8a206ce5a81cc0ebd3e0bf8ae6@FreeBSD.org>
References:  <42334057.5070705@gmx.net> <42492F0B.3040704@alphaque.com> <424B7A2D.5060902@alphaque.com> <c7f48b8a206ce5a81cc0ebd3e0bf8ae6@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------030409040900090609060302
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

On 03/31/05 20:51 John Baldwin said the following:
> The problem is that the taskqueue_swi in 4.x doesn't have a thread 
> context that can be slept on via tsleep().  The fix would be to create a 
> kthread in which to run the ACPI tasks.  4.x already has one such 
> kthread for the taskqueue_thread taskqueue that you could use as a 
> reference if you wish to do this yourself.

thanx for the pointer, john. with your explanation, the fix was simple. 
since applying this, it's not paniced in over 24 hours of continuous 
running. patch attached. i'll also raise a PR for this.


-- 
Regards,                           /\_/\   "All dogs go to heaven."
dinesh@alphaque.com                (0 0)    http://www.alphaque.com/
+==========================----oOO--(_)--OOo----==========================+
| for a in past present future; do                                        |
|   for b in clients employers associates relatives neighbours pets; do   |
|   echo "The opinions here in no way reflect the opinions of my $a $b."  |
| done; done                                                              |
+=========================================================================+

--------------030409040900090609060302
Content-Type: text/plain;
 name="sys::dev::acpica::Osd::OsdSchedule.c.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="sys::dev::acpica::Osd::OsdSchedule.c.patch"

--- sys/dev/acpica/Osd/OsdSchedule.c.orig	Thu Mar 31 00:35:42 2005
+++ sys/dev/acpica/Osd/OsdSchedule.c	Fri Apr  1 13:55:00 2005
@@ -192,7 +192,7 @@
     TASK_INIT(&at->at_task, pri, AcpiOsExecuteQueue, at);
 
 #if __FreeBSD_version < 500000
-    taskqueue_enqueue(taskqueue_swi, (struct task *)at);
+    taskqueue_enqueue(taskqueue_thread, (struct task *)at);
 #else
     taskqueue_enqueue(taskqueue_acpi, (struct task *)at);
 #endif

--------------030409040900090609060302--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?424E13B1.4090607>