From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758615Ab0EGVic (ORCPT ); Fri, 7 May 2010 17:38:32 -0400 Received: from cavan.codon.org.uk ([93.93.128.6]:33631 "EHLO cavan.codon.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751442Ab0EGVib (ORCPT ); Fri, 7 May 2010 17:38:31 -0400 Date: Fri, 7 May 2010 22:38:00 +0100 From: Matthew Garrett To: Daniel Walker Cc: Tony Lindgren , Brian Swetland , Alan Stern , mark gross , markgross@thegnar.org, Len Brown , linux-doc@vger.kernel.org, Kernel development list , Jesse Barnes , Oleg Nesterov , Tejun Heo , Linux-pm mailing list , Wu Fengguang , Andrew Morton Subject: Re: [linux-pm] [PATCH 1/8] PM: Add suspend block api. Message-ID: <20100507213800.GD28906@srcf.ucam.org> References: <20100507184333.GL387@atomide.com> <20100507184621.GA25978@srcf.ucam.org> <1273259186.3542.93.camel@c-dwalke-linux.qualcomm.com> <20100507192837.GM387@atomide.com> <20100507193353.GA27175@srcf.ucam.org> <20100507195548.GN387@atomide.com> <20100507202859.GA27328@srcf.ucam.org> <20100507205329.GP387@atomide.com> <20100507210304.GA28701@srcf.ucam.org> <1273267820.3542.120.camel@c-dwalke-linux.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1273267820.3542.120.camel@c-dwalke-linux.qualcomm.com> User-Agent: Mutt/1.5.18 (2008-05-17) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: mjg59@cavan.codon.org.uk X-SA-Exim-Scanned: No (on cavan.codon.org.uk); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, May 07, 2010 at 02:30:20PM -0700, Daniel Walker wrote: > On Fri, 2010-05-07 at 22:03 +0100, Matthew Garrett wrote: > > > 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? > > To me it's somewhat of a negative for suspend blockers. Since to solve > the problem you give above you would have to use a suspend blocker in an > asynchronous way (locked in an interrupt, released in a thread too) > assuming I understand your example. I've had my share of semaphore > nightmares, and I'm not too excited to see a protection scheme (i.e. a > lock) which allows asynchronous usage like suspend blockers. Check the input patch for an example of this. -- Matthew Garrett | mjg59@srcf.ucam.org