[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100507210304.GA28701@srcf.ucam.org>
Date: Fri, 7 May 2010 22:03:04 +0100
From: Matthew Garrett <mjg@...hat.com>
To: Tony Lindgren <tony@...mide.com>
Cc: Daniel Walker <dwalker@...o99.com>,
Brian Swetland <swetland@...gle.com>,
Alan Stern <stern@...land.harvard.edu>,
mark gross <mgross@...ux.intel.com>, markgross@...gnar.org,
Len Brown <len.brown@...el.com>, linux-doc@...r.kernel.org,
Kernel development list <linux-kernel@...r.kernel.org>,
Jesse Barnes <jbarnes@...tuousgeek.org>,
Oleg Nesterov <oleg@...hat.com>, Tejun Heo <tj@...nel.org>,
Linux-pm mailing list <linux-pm@...ts.linux-foundation.org>,
Wu Fengguang <fengguang.wu@...el.com>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [linux-pm] [PATCH 1/8] PM: Add suspend block api.
On Fri, May 07, 2010 at 01:53:29PM -0700, Tony Lindgren wrote:
> So for example, if I leave ping running in a a terminal, do you
> have some way of preventing that from eating the battery?
It depends on policy. If all network packets generate wakeup events then
no, that will carry on eating battery. If ICMP doesn't generate a wakeup
event then the process won't be run.
> Do you just suspend the whole system anyways at some point,
> or do you have some other trick?
If nothing's holding any suspend blocks then the system will enter
suspend. If the packet generates a wakeup then the kernel would block
suspend until userspace has had the opportunity to do so. Once userspace
has handled the packet then it could release the block and the system
will immediately transition back into suspend.
Here's a different example. A process is waiting for a keypress, but
because it's badly written it's also drawing to the screen at 60 frames
per second and preventing the system from every going to idle. How do
you quiesce the system while still ensuring that the keypress will be
delivered to the application?
--
Matthew Garrett | mjg59@...f.ucam.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists