xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: "Jan Beulich" <JBeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
	Wei Liu <wei.liu2@citrix.com>,
	Roger Pau Monne <roger.pau@citrix.com>
Subject: Re: Ping: [PATCH 0/5] x86: more power-efficient CPU parking
Date: Wed, 03 Apr 2019 06:43:12 -0600	[thread overview]
Message-ID: <5CA4AA600200007800224448@prv1-mh.provo.novell.com> (raw)
In-Reply-To: <6dab54cd-0246-2dff-42dd-93477c7c19e3@citrix.com>

>>> On 03.04.19 at 13:14, <andrew.cooper3@citrix.com> wrote:
> On 03/04/2019 11:12, Jan Beulich wrote:
>>>>> On 01.08.18 at 16:22,  wrote:
>>> When putting CPUs to sleep permanently, we should try to put them into
>>> the most power conserving state possible. For now it is unclear whether,
>>> especially in a deep C-state, the P-state also matters, so this series only
>>> arranges for the C-state side of things (plus some cleanup).
>>>
>>> 1: x86/cpuidle: replace a pointless NULL check
>>> 2: x86/idle: re-arrange dead-idle handling
>>> 3: x86/cpuidle: push parked CPUs into deeper sleep states when possible
>>> 4: x86/cpuidle: clean up Cx dumping
>>> 5: x86: place non-parked CPUs into wait-for-SIPI state after offlining
>> So patch 5 is understandably controversial, and I'm explicitly
>> excluding it from the ping.
> 
> Considering that it causes EFI firmware to explode in several
> interesting ways, I'm afraid it is a complete nonstarter.

I didn't know this - neither of my two EFI boxes have exploded in
any way during the last half year. Care to share details?

>> Patch 1 has gone in long ago and
>> patch 4 has been acked. While there was some feedback on
>> 2 (albeit stalled then after my reply), I don't think I've had any
>> substantial feedback on 3 though, yet _they_ are supposed to
>> provide the main improvement here. Patch 5 really was meant
>> to be more optional than I had expressed, hence its placement
>> even after the pure cleanup patch 4.
> 
> Some of the patches have cycled out of my inbox, so I'm reviewing from
> the mail archive.
> 
> 2) Now that default_dead_idle() isn't a terminal function, you must use
> spec_ctrl_enter_idle() on the way back out for safety.

Ah, yes, perhaps better to add it, than to implicitly rely on callers
(there's really exactly one) to be terminal. (I take it you mean
spec_ctrl_exit_idle().)

> I'm still going to insist on something about #MC, even if it is just a
> note in the commit message saying "this doesn't yet make #MC any safer
> for parked CPUs".

I can add something like this, but what is it that's known unsafe
for parked CPUs? They in particular retain their per-CPU data. If
anything I see a problem with fully offline CPUs. For now I'll add
a similar sentence, but with "parked" replaced.

One other question (I apparently forgot about this aspect
between putting together the series and posting it):
acpi_dead_idle() has built-in loops as well. While it's not
expected for a CPU to need waking from there (as no "even
better" dead-idle handler could get installed) I wonder whether
for consistency we wouldn't better drop the loops there too.
The downside of doing so would be added overhead in case
of spurious wakeups (which ought to have a small chance of
being possible in particular in the MWAIT case).

> 3) Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Thanks!

Jan



_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  reply	other threads:[~2019-04-03 12:43 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-01 14:22 [PATCH 0/5] x86: more power-efficient CPU parking Jan Beulich
2018-08-01 14:31 ` [PATCH 1/5] x86/cpuidle: replace a pointless NULL check Jan Beulich
2018-08-01 14:33   ` Andrew Cooper
2018-08-01 15:12     ` Jan Beulich
2018-08-01 14:31 ` [PATCH 2/5] x86/idle: re-arrange dead-idle handling Jan Beulich
2018-09-07 17:08   ` Andrew Cooper
2018-09-10 10:13     ` Jan Beulich
2018-10-26 10:55       ` Ping: " Jan Beulich
2018-12-05 20:33       ` Andrew Cooper
2018-12-06  8:16         ` Jan Beulich
2018-08-01 14:32 ` [PATCH 3/5] x86/cpuidle: push parked CPUs into deeper sleep states when possible Jan Beulich
2018-10-26 10:56   ` Ping: " Jan Beulich
2018-08-01 14:33 ` [PATCH 4/5] x86/cpuidle: clean up Cx dumping Jan Beulich
2018-08-01 14:40   ` Andrew Cooper
2018-08-01 14:33 ` [PATCH 5/5] x86: place non-parked CPUs into wait-for-SIPI state after offlining Jan Beulich
2018-08-29  7:08 ` Ping: [PATCH 0/5] x86: more power-efficient CPU parking Jan Beulich
2018-08-29 17:01   ` Andrew Cooper
2018-08-30  7:29     ` Jan Beulich
     [not found] ` <5B61C21202000000000FC1F1@prv1-mh.provo.novell.com>
     [not found]   ` <5B61C21202000078001F8805@prv1-mh.provo.novell.com>
     [not found]     ` <5B61C21202000000000FC6BD@prv1-mh.provo.novell.com>
     [not found]       ` <5B61C212020000780020B6D8@prv1-mh.provo.novell.com>
     [not found]         ` <5B61C21202000000000FF27E@prv1-mh.provo.novell.com>
     [not found]           ` <5B61C2120200007800224310@prv1-mh.provo.novell.com>
2019-04-03 10:12             ` Jan Beulich
2019-04-03 11:14               ` Andrew Cooper
2019-04-03 12:43                 ` Jan Beulich [this message]
2019-04-03 14:44                   ` Andrew Cooper
2019-04-03 15:20                     ` Jan Beulich
     [not found]             ` <5B61C2120200000000101EDC@prv1-mh.provo.novell.com>
     [not found]               ` <5B61C212020000780022FF0D@prv1-mh.provo.novell.com>
2019-05-17 10:10                 ` [PATCH v2 0/3] " Jan Beulich
2019-05-17 10:10                   ` [Xen-devel] " Jan Beulich
2019-05-17 10:11                   ` [PATCH v2 1/3] x86/idle: re-arrange dead-idle handling Jan Beulich
2019-05-17 10:11                     ` [Xen-devel] " Jan Beulich
2019-05-20 14:25                     ` Andrew Cooper
2019-05-20 14:25                       ` [Xen-devel] " Andrew Cooper
2019-05-17 10:12                   ` [PATCH v2 2/3] x86/cpuidle: push parked CPUs into deeper sleep states when possible Jan Beulich
2019-05-17 10:12                     ` [Xen-devel] " Jan Beulich
2019-05-17 10:12                   ` [PATCH v2 3/3] x86/cpuidle: clean up Cx dumping Jan Beulich
2019-05-17 10:12                     ` [Xen-devel] " Jan Beulich

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=5CA4AA600200007800224448@prv1-mh.provo.novell.com \
    --to=jbeulich@suse.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=roger.pau@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).