On Tue, Oct 06, 2020 at 09:29:24PM +0200, Rafael J. Wysocki wrote:It should be safe, but let's try to do something more fine-grained.
This was cleared up in another mail.After the commit, the default_status file does not appear in /sysSomething is amiss, then, because the commit doesn't affect the presence of
this file.
The only thing it does is to set the use_acpi flag for several processorThanks. I applied the following
models in intel_idle.c.
It can be effectively reversed by removing all of the ".use_acpi = true,"
lines from intel_idle.c.
In particular, please check if changing the value of use_acpi in struct
idle_cpu_hsx from 'true' to 'false' alone (without reverting the commit)
makes the issue go away in 5.9-rc8 (the default_status file should be
present regardless).
diff --git a/drivers/idle/intel_idle.c b/drivers/idle/intel_idle.c
index 9a810e4a7946..6478347669a9 100644
--- a/drivers/idle/intel_idle.c
+++ b/drivers/idle/intel_idle.c
@@ -1044,7 +1044,7 @@ static const struct idle_cpu idle_cpu_hsw __initconst = {
static const struct idle_cpu idle_cpu_hsx __initconst = {
.state_table = hsw_cstates,
.disable_promotion_to_c1e = true,
- .use_acpi = true,
+ .use_acpi = false,
};
netperf UDP_STREAM
pre enable enable 5.9-rc8 5.9-rc8
cst cst cst-no-hsx-acpi vanilla no-hsx-acpi
Hmean send-64 203.96 ( 0.00%) 179.23 * -12.13%* 201.04 ( -1.44%) 203.24 ( -0.36%) 233.43 * 14.45%*
Hmean send-128 403.66 ( 0.00%) 355.99 * -11.81%* 402.28 ( -0.34%) 387.65 * -3.97%* 461.47 * 14.32%*
Hmean send-256 784.39 ( 0.00%) 697.78 * -11.04%* 782.15 ( -0.29%) 758.49 * -3.30%* 895.31 * 14.14%*
Hmean recv-64 203.96 ( 0.00%) 179.23 * -12.13%* 201.04 ( -1.44%) 203.24 ( -0.36%) 233.43 * 14.45%*
Hmean recv-128 403.66 ( 0.00%) 355.99 * -11.81%* 402.28 ( -0.34%) 387.65 * -3.97%* 461.47 * 14.32%*
Hmean recv-256 784.39 ( 0.00%) 697.78 * -11.04%* 782.15 ( -0.29%) 758.49 * -3.30%* 895.28 * 14.14%*
This is a more limited run to save time but is enough to illustrate
the point.
pre-cst is just before your patch
enable-cst is your patch that was bisected
enable-cst-no-hsx-acpi is your patch with use_acpi disabled
5.9-rc8-vanilla is what it sounds like
5.9-rc8-no-hsx-acpi disables use_acpi
The enable-cst-no-hsx-acpi result indicates that use_acpi was the issue for
Haswell (at least these machines). Looking just at 5.9-rc8-vanillaa might
have been misleading because its performance is not far off the baseline
due to unrelated changes that mostly offset the performance penalty.
The key question is -- how appropriate would it be to disable acpi for
Haswell? Would that be generally safe or could it hide other surprises?