From owner-freebsd-current@FreeBSD.ORG Wed Oct 3 15:38:34 2007 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DD9ED16A41B; Wed, 3 Oct 2007 15:38:34 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from anuket.mj.niksun.com (gwnew.niksun.com [65.115.46.162]) by mx1.freebsd.org (Postfix) with ESMTP id 7738313C469; Wed, 3 Oct 2007 15:38:33 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from niksun.com (anuket [10.70.0.5]) by anuket.mj.niksun.com (8.13.6/8.13.6) with ESMTP id l93FcUEi080879; Wed, 3 Oct 2007 11:38:31 -0400 (EDT) (envelope-from jkim@FreeBSD.org) From: Jung-uk Kim To: freebsd-acpi@FreeBSD.org Date: Wed, 3 Oct 2007 11:38:26 -0400 User-Agent: KMail/1.6.2 References: <470002B5.6030002@root.org> In-Reply-To: <470002B5.6030002@root.org> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200710031138.28820.jkim@FreeBSD.org> X-Virus-Scanned: ClamAV 0.90.2/4461/Wed Oct 3 04:50:48 2007 on anuket.mj.niksun.com X-Virus-Status: Clean Cc: freebsd-current@FreeBSD.org, Nate Lawson Subject: Re: patch: change in acpi taskq behavior X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 15:38:35 -0000 On Sunday 30 September 2007 04:10 pm, Nate Lawson wrote: > Attached is a patch (one for 6, one for 7) that shouldn't break > anything for most people and may fix some battery status issues for > others. It changes how we run tasks during boot. It seems some > hardware expects synchronous access but our taskq is not running > until after interrupts are enabled. This patch bounces calls > through a wrapper that executes the callback directly if we're not > booted yet. Sorry, I didn't test it but I have some questions. Why do you add a wrapper and pollute all AcpiOsQueueForExecution()/AcpiOsExecute() consumers? Isn't it more simpler to let the function determine to queue or not to queue? Why do you check cold and rebooting flags? If you wanted to check the taskqueue is ready, you could check taskqueue_acpi is NULL or not, instead. Thanks, Jung-uk Kim