LWN.net Logo

Re: [GIT PULL] PM updates for 2.6.33

From:  Linus Torvalds <torvalds-AT-linux-foundation.org>
To:  "Rafael J. Wysocki" <rjw-AT-sisk.pl>
Subject:  Re: [GIT PULL] PM updates for 2.6.33
Date:  Sat, 5 Dec 2009 13:43:43 -0800 (PST)
Cc:  LKML <linux-kernel-AT-vger.kernel.org>, ACPI Devel Maling List <linux-acpi-AT-vger.kernel.org>, pm list <linux-pm-AT-lists.linux-foundation.org>
Archive-link:  Article, Thread



On Sat, 5 Dec 2009, Rafael J. Wysocki wrote:
> 
> * Asynchronous suspend and resume infrastructure.  For now, PCI, ACPI and
>   serio devices are enabled to suspend and resume asynchronously.

I really think this is totally and utterly broken. Both from an 
implementation standpoint _and_ from a pure conceptual one.

Why isn't the suspend/resume async stuff just done like the init async 
stuff?

We don't need that crazy per-device flag for initialization, neither do we 
need drivers "enabling" any async code at all. They just do some things 
asynchronously, and then at the end of init time we wait for all those 
async events.

So why does suspend/resume need to do crazy sh*t instead?

It all looks terminally broken: you force async suspend for all PCI 
drivers, even when it makes no sense. Rather than let the drivers that 
already know how to do things like disk spinup asynchronously just do it 
that way.

The "timing" routines are also just crazy. What is the excuse for 
dpm_show_time() taking both start and stop times, since there is never any 
valid situation when it shouldn't have that do_gettimgofday(&stop) just 
before it? IOW - the whole end-time thing should be _inside_ 
dpm_show_time, rather than being done by the caller. No?

In other words - I'm not pulling this crazy thing. You'd better explain 
why it was done that way, when we already have done the same things better 
before in different ways.

				Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



(Log in to post comments)

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds