Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757584Ab0FBDKS (ORCPT ); Tue, 1 Jun 2010 23:10:18 -0400 Received: from mail-px0-f174.google.com ([209.85.212.174]:43422 "EHLO mail-px0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755444Ab0FBDKQ convert rfc822-to-8bit (ORCPT ); Tue, 1 Jun 2010 23:10:16 -0400 MIME-Version: 1.0 In-Reply-To: <20100601140120.GB1281@gvim.org> References: <20100530200409.GA21632@gvim.org> <20100531095753.4c174f2d@notabene.brown> <20100531221035.GB31155@gvim.org> <201006010045.21382.rjw@sisk.pl> <20100601050914.GG31155@gvim.org> <20100601140120.GB1281@gvim.org> Date: Tue, 1 Jun 2010 20:10:15 -0700 Message-ID: Subject: Re: [linux-pm] [RFC] lp_events: an lternitive to suspend blocker user mode and kernel API From: =?ISO-8859-1?Q?Arve_Hj=F8nnev=E5g?= To: markgross@thegnar.org Cc: "Rafael J. Wysocki" , mark.gross@intel.com, Neil Brown , Brian Swetland , linux-kernel@vger.kernel.org, Arve@smtp1.linux-foundation.org, Thomas Gleixner , linux-pm@lists.linux-foundation.org, Alan Cox Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2676 Lines: 60 2010/6/1 mark gross <640e9920@gmail.com>: > On Mon, May 31, 2010 at 10:24:30PM -0700, Arve Hj?nnev?g wrote: >> On Mon, May 31, 2010 at 10:09 PM, mark gross <640e9920@gmail.com> wrote: >> > On Tue, Jun 01, 2010 at 12:45:21AM +0200, Rafael J. Wysocki wrote: >> >> On Tuesday 01 June 2010, mark gross wrote: >> >> > On Mon, May 31, 2010 at 09:57:53AM +1000, Neil Brown wrote: >> >> ... >> >> > > So I would suggest modifying your proposal to simply create a new 'input' >> >> > > device. ?Any driver that supports wake-from-suspend queues an event to that >> >> > > device when a wakeup event occurs. ?If the device is open and has any queued >> >> > > events, then a suspend request such as 'echo mem > /sys/power/state' completes >> >> > > without going into full suspend. >> >> > >> >> > /me likes. >> >> > >> >> > > Then you just need to convince us that this mechanism can be used without any >> >> > > race problems. ?If it can, then it would certainly be a simple and >> >> > > unobtrusive approach. >> >> > >> >> > Lets find out. >> >> >> >> Simple question: how is that better than the Alan Stern's proposed approach? >> >> >> > I just saw Alan Stern's proposal, and have gotten some input form some >> > others. ?I can't say my patch represents a better Idea than what Alan >> > proposed. ?However; what Alan (and Thomas) are talking about is >> > effectively the same as the kenrel mode wakelock/suspend blocker thing, >> > and although it reuses existing infrastructure, it doesn't solve the >> > problem of needing overlapping blocking sections of code from ISR to >> > user mode. >> > >> >> I don't think your solution solves this either. > > Why? ?my proposal effectively removes the overlapping kernel blocking > sections uppon wake up by forcing the user mode to ack the wake event > and re-issue the suspend request explicitly. ?That pretty much solves > that problem. > How to you ack the wakeup event in a safe way. Another wakeup event can come in after you decided to ack the last event. Also when the user-space power manager reads that there was a wakeup event, how does it know if the real event has been delivered to user-space, and if the user-space code that consumed this event has had a chance to block suspend? > We can talk about whether or not it can be used effectively with Android > user mode PM or not, which I still think it can, but I need to try the > mods to power.c. > -- Arve Hj?nnev?g -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/