From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760662AbbBIJte (ORCPT ); Mon, 9 Feb 2015 04:49:34 -0500 Received: from casper.infradead.org ([85.118.1.10]:51648 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760412AbbBIJtc (ORCPT ); Mon, 9 Feb 2015 04:49:32 -0500 Date: Mon, 9 Feb 2015 10:49:26 +0100 From: Peter Zijlstra To: "Rafael J. Wysocki" Cc: Thomas Gleixner , "Li, Aubrey" , "Brown, Len" , Alan Cox , LKML , Linux PM list Subject: Re: [Update] Re: [PATCH v3]PM/Sleep: Timer quiesce in freeze state Message-ID: <20150209094926.GQ5029@twins.programming.kicks-ass.net> References: <54866625.8010406@linux.intel.com> <20150206161454.GQ21418@twins.programming.kicks-ass.net> <20150206182922.GN24151@twins.programming.kicks-ass.net> <1684745.qMDN6HIHc8@vostro.rjw.lan> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1684745.qMDN6HIHc8@vostro.rjw.lan> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Feb 06, 2015 at 11:36:12PM +0100, Rafael J. Wysocki wrote: > On Friday, February 06, 2015 07:29:22 PM Peter Zijlstra wrote: > > > So I'm a wee bit confused; if we use an enter_freeze() state that keeps > > > interrupts disabled; who is going to call the freeze_wake() thing? > > > > Ah, I think I see, so we wake up, keep the interrupt pending, re-enable > > the tick and time and everybody, then re-enable interrupts, take the > > interrupt and go around the idle loop to find we need a reschedule etc.. > > Exactly. So x86 mwait can do this; what other archs can 'sleep' and keep interrupts disabled? It looks like the ARM WFI thing wakes on pending interrupts and doesn't actually require interrupts to be enabled, so that too would work.