From owner-freebsd-current@FreeBSD.ORG Sun Dec 8 13:39:02 2013 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A336EE25; Sun, 8 Dec 2013 13:39:02 +0000 (UTC) Received: from alchemy.franken.de (alchemy.franken.de [194.94.249.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3BEB11337; Sun, 8 Dec 2013 13:39:01 +0000 (UTC) Received: from alchemy.franken.de (localhost [127.0.0.1]) by alchemy.franken.de (8.14.7/8.14.7/ALCHEMY.FRANKEN.DE) with ESMTP id rB8DcrSM075620; Sun, 8 Dec 2013 14:38:53 +0100 (CET) (envelope-from marius@alchemy.franken.de) Received: (from marius@localhost) by alchemy.franken.de (8.14.7/8.14.7/Submit) id rB8DcrAY075619; Sun, 8 Dec 2013 14:38:53 +0100 (CET) (envelope-from marius) Date: Sun, 8 Dec 2013 14:38:53 +0100 From: Marius Strobl To: Justin Hibbits Subject: Re: Request for testing an alternate branch Message-ID: <20131208133853.GA75604@alchemy.franken.de> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.17 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: Sun, 08 Dec 2013 13:39:02 -0000 On Wed, Dec 04, 2013 at 10:21:13PM -0800, Justin Hibbits wrote: > I've been working on the projects/pmac_pmu branch for some time now to > add suspend/resume as well as CPU speed change for certain PowerPC > machines, about a year since I created the branch, and now it's stable > enough that I want to merge it into HEAD, hence this request. However, > it does touch several drivers, turning them into "early drivers", such > that they can be initialized, and suspended and resumed at a different > time. Saying that, I do need testing from other architectures, to make > sure I haven't broken anything. > > The technical details: > > To get proper ordering, I've extended the bus_generic_suspend() and > bus_generic_resume() to do multiple passes. Devices which cannot be > enabled or disabled at the current pass level would return an EAGAIN. > This could possibly cause problems, since it's an addition to an > existing API rather than a new API to run along side it, so it needs a > great deal of testing. It works fine on PowerPC, but I don't have any > i386/amd64 or sparc64 hardware to test it on, so would like others who > do to test it. I don't think that it would impact x86 at all (testing > is obviously required), because the nexus is not an EARLY_DRIVER_MODULE, > so all devices would be handled at the same pass. But, I do know the > sparc64 has an EARLY_DRIVER_MODULE() nexus, so that will likely be > impacted. > > Also, any comments are of course welcome. Technical concerns are > obviously welcome, and I will try to address everything. Do you have a patch against head? Marius