From: Andreas Mohr <andi@lisas.de>
To: Dave Hansen <dave.hansen@intel.com>
Cc: K Prateek Nayak <kprateek.nayak@amd.com>,
linux-kernel@vger.kernel.org, rafael@kernel.org, lenb@kernel.org,
linux-acpi@vger.kernel.org, linux-pm@vger.kernel.org,
dave.hansen@linux.intel.com, bp@alien8.de, tglx@linutronix.de,
andi@lisas.de, puwen@hygon.cn, mario.limonciello@amd.com,
peterz@infradead.org, rui.zhang@intel.com, gpiccoli@igalia.com,
daniel.lezcano@linaro.org, ananth.narayan@amd.com,
gautham.shenoy@amd.com, Calvin Ong <calvin.ong@amd.com>,
stable@vger.kernel.org, regressions@lists.linux.dev
Subject: Re: [PATCH] ACPI: processor_idle: Skip dummy wait for processors based on the Zen microarchitecture
Date: Thu, 22 Sep 2022 21:42:15 +0200 [thread overview]
Message-ID: <Yyy6l94G0O2B7Yh1@rhlx01.hs-esslingen.de> (raw)
In-Reply-To: <88c17568-8694-940a-0f1f-9d345e8dcbdb@intel.com>
Hi,
On Thu, Sep 22, 2022 at 10:01:46AM -0700, Dave Hansen wrote:
> diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
> index 16a1663d02d4..9f40917c49ef 100644
> --- a/drivers/acpi/processor_idle.c
> +++ b/drivers/acpi/processor_idle.c
> @@ -531,10 +531,27 @@ static void wait_for_freeze(void)
> /* No delay is needed if we are in guest */
> if (boot_cpu_has(X86_FEATURE_HYPERVISOR))
> return;
> + /*
> + * Modern (>=Nehalem) Intel systems use ACPI via intel_idle,
> + * not this code. Assume that any Intel systems using this
> + * are ancient and may need the dummy wait. This also assumes
> + * that the motivating chipset issue was Intel-only.
> + */
> + if (boot_cpu_data.x86_vendor != X86_VENDOR_INTEL)
> + return;
> #endif
> - /* Dummy wait op - must do something useless after P_LVL2 read
> - because chipsets cannot guarantee that STPCLK# signal
> - gets asserted in time to freeze execution properly. */
16 years ago,
I did my testing on a VIA 8233/8235 chipset (AMD Athlon/Duron) system......
(plus reading VIA spec PDFs which mentioned "STPCLK#" etc.).
AFAIR I was doing kernel profiling (via oprofile, IIRC)
for painful performance hotspots (read: I/O accesses etc.), and
this was one resulting place which I stumbled over.
And if I'm not completely mistaken,
that dummy wait I/O op *was* needed (else "nice" effects)
on my system (put loud and clear: *non*-Intel).
So one can see where my profiling effort went
(*optimizing* things, not degrading them)
--> hints that current Zen3-originating effort is not
about a regression in the "regression bug" sense -
merely a (albeit rather appreciable/sizeable... congrats!)
performance deterioration vs.
an optimal (currently non-achieved) software implementation state
(also: of PORT-based handling [vs. MWAIT], mind you!).
I still have that VIA hardware, but inactive
(had the oh-so-usual capacitors issue :( ).
Sorry for sabotaging your current fix efforts ;-) -
but thank you very much for your work/discussion
in this very central/hotpath area! (this extends to all of you...)
Greetings
Andreas Mohr
next prev parent reply other threads:[~2022-09-22 19:50 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-21 6:36 [PATCH] ACPI: processor_idle: Skip dummy wait for processors based on the Zen microarchitecture K Prateek Nayak
2022-09-21 8:47 ` Borislav Petkov
2022-09-21 10:39 ` K Prateek Nayak
2022-09-21 13:10 ` Borislav Petkov
2022-09-21 14:15 ` Dave Hansen
2022-09-21 19:51 ` Borislav Petkov
2022-09-21 19:55 ` Limonciello, Mario
2022-09-22 3:58 ` Ananth Narayan
2022-09-22 5:44 ` K Prateek Nayak
[not found] ` <20220923160106.9297-1-ermorton@ericmoronsm1mbp.amd.com>
2022-09-23 16:15 ` Ananth Narayan
2022-09-21 15:00 ` Peter Zijlstra
2022-09-21 19:48 ` Borislav Petkov
2022-09-22 8:17 ` Peter Zijlstra
2022-09-22 15:21 ` Rafael J. Wysocki
2022-09-22 15:36 ` Borislav Petkov
2022-09-22 15:53 ` Rafael J. Wysocki
2022-09-22 16:36 ` Dave Hansen
2022-09-22 16:44 ` Dave Hansen
2022-09-22 16:54 ` K Prateek Nayak
2022-09-22 17:01 ` Dave Hansen
2022-09-22 17:48 ` Limonciello, Mario
2022-09-22 18:17 ` Dave Hansen
2022-09-22 18:28 ` Limonciello, Mario
2022-09-23 11:47 ` Ananth Narayan
2022-09-22 19:42 ` Andreas Mohr [this message]
2022-09-22 20:10 ` Andreas Mohr
2022-09-22 21:21 ` Dave Hansen
2022-09-22 21:38 ` Limonciello, Mario
2022-09-23 7:42 ` Peter Zijlstra
2022-09-23 7:57 ` Peter Zijlstra
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=Yyy6l94G0O2B7Yh1@rhlx01.hs-esslingen.de \
--to=andi@lisas.de \
--cc=ananth.narayan@amd.com \
--cc=bp@alien8.de \
--cc=calvin.ong@amd.com \
--cc=daniel.lezcano@linaro.org \
--cc=dave.hansen@intel.com \
--cc=dave.hansen@linux.intel.com \
--cc=gautham.shenoy@amd.com \
--cc=gpiccoli@igalia.com \
--cc=kprateek.nayak@amd.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mario.limonciello@amd.com \
--cc=peterz@infradead.org \
--cc=puwen@hygon.cn \
--cc=rafael@kernel.org \
--cc=regressions@lists.linux.dev \
--cc=rui.zhang@intel.com \
--cc=stable@vger.kernel.org \
--cc=tglx@linutronix.de \
/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.