All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sudeep Holla <sudeep.holla@arm.com>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Sudeep Holla <sudeep.holla@arm.com>,
	linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH] cpuidle: fix fallback mechanism for suspend to idle in absence of enter_freeze
Date: Fri, 22 Jan 2016 09:20:15 +0000	[thread overview]
Message-ID: <56A1F44F.4040305@arm.com> (raw)
In-Reply-To: <14264394.1r9YeUMTui@vostro.rjw.lan>



On 22/01/16 01:15, Rafael J. Wysocki wrote:
> On Thursday, January 21, 2016 11:19:29 AM Sudeep Holla wrote:
>> Commit 51164251f5c3 ("sched / idle: Drop default_idle_call() fallback
>> from call_cpuidle()") made find_deepest_state() return non-negative
>> value and check all the states with index > 0. Also a result,
>> find_deepest_state() returns 0 even when enter_freeze callbacks are not
>> implemented and enter_freeze_proper is called which ends up crashing
>> the kernel.
>>
>> This patch updates the check for index > 0 in cpuidle_enter_freeze and
>> cpuidle_idle_call(when idle_should_freeze is true) to restore the
>> suspend-to-idle functionality in absence of enter_freeze callback.
>>
>> Fixes: 51164251f5c3 ("sched / idle: Drop default_idle_call() fallback from call_cpuidle()")
>> Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
>> Cc: Ingo Molnar <mingo@redhat.com>
>> Cc: Peter Zijlstra <peterz@infradead.org>
>> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
>> ---
>>   drivers/cpuidle/cpuidle.c | 2 +-
>>   kernel/sched/idle.c       | 2 +-
>>   2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> Hi Rafael,
>
> Hi,
>
> Sorry for the breakage.
>

Sorry that I missed to test suspend-to-idle before it got merged.

>> I assume you prefer to retain find_deepest_state return non-negative
>> values, so I took this approach for fixing the bug. Do you think we
>> need to support enter_freeze_proper for index 0 ?
>
> Zero is a special case on x86, so supporting enter_freeze_proper() for it
> is not necessary.
>

Even on ARM, 0 is used for WFI only, which will not be used for freeze.

> If you think we can also make 0 a special case on ARM, the others should
> not object to that either.
>

Makes sense and since it's already reserved for WFI on ARM, it should be
fine. If there are no objections, can you pick up this fix ?

-- 
Regards,
Sudeep

  reply	other threads:[~2016-01-22  9:20 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-21 11:19 [PATCH] cpuidle: fix fallback mechanism for suspend to idle in absence of enter_freeze Sudeep Holla
2016-01-22  1:15 ` Rafael J. Wysocki
2016-01-22  9:20   ` Sudeep Holla [this message]
2016-01-22 13:45     ` Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56A1F44F.4040305@arm.com \
    --to=sudeep.holla@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=rjw@rjwysocki.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.