Message ID | 20220224113807.91771-3-pmenzel@molgen.mpg.de |
---|---|
State | New |
Headers | show |
Series | [1/4] acpi: exsystem: Add units to time variable names | expand |
So, this is the current implementation: /* * For compatibility with other ACPI implementations and to prevent * accidental deep sleeps, limit the sleep time to something reasonable. */ if (HowLong > ACPI_MAX_SLEEP) { HowLong = ACPI_MAX_SLEEP; } AcpiOsSleep (HowLong); Where ACPI_MAX_SLEEP is: #define ACPI_MAX_SLEEP 2000 /* 2000 millisec == two seconds */ -----Original Message----- From: Paul Menzel <pmenzel@molgen.mpg.de> Sent: Thursday, February 24, 2022 3:38 AM To: Moore, Robert <robert.moore@intel.com>; Wysocki, Rafael J <rafael.j.wysocki@intel.com>; Len Brown <lenb@kernel.org> Cc: Paul Menzel <pmenzel@molgen.mpg.de>; linux-acpi@vger.kernel.org; devel@acpica.org; linux-kernel@vger.kernel.org Subject: [PATCH 3/4] acpi: exsystem: Warn about sleeps greater than 50 ms Quick boottime is important, so warn about sleeps greater than 50 ms in ACPI. 50 ms is still long compared to distribution Linux kernels reaching initrd in 350 ms, so should probably changed to 10 ms, so people are aware about this. Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de> --- drivers/acpi/acpica/exsystem.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/acpi/acpica/exsystem.c b/drivers/acpi/acpica/exsystem.c index 00f66af31ffa..bdffb8aac05c 100644 --- a/drivers/acpi/acpica/exsystem.c +++ b/drivers/acpi/acpica/exsystem.c @@ -167,6 +167,11 @@ acpi_status acpi_ex_system_do_sleep(u64 how_long_ms) acpi_ex_exit_interpreter(); + if (how_long_ms > 50) { + ACPI_WARNING((AE_INFO, + "Time parameter %llu > 50 ms. Please contact firmware vendor for more responsive system.", how_long_ms)); + } + /* * For compatibility with other ACPI implementations and to prevent * accidental deep sleeps, limit the sleep time to something reasonable. -- 2.35.1
Dear Robert, Am 24.02.22 um 17:19 schrieb Moore, Robert: > So, this is the current implementation: > > /* > * For compatibility with other ACPI implementations and to prevent > * accidental deep sleeps, limit the sleep time to something reasonable. > */ > if (HowLong > ACPI_MAX_SLEEP) > { > HowLong = ACPI_MAX_SLEEP; > } > > AcpiOsSleep (HowLong); > > Where ACPI_MAX_SLEEP is: > > #define ACPI_MAX_SLEEP 2000 /* 2000 millisec == two seconds */ Exactly. I am not changing it though, but just add a warning. Kind regards, Paul > -----Original Message----- > From: Paul Menzel <pmenzel@molgen.mpg.de> > Sent: Thursday, February 24, 2022 3:38 AM > To: Moore, Robert <robert.moore@intel.com>; Wysocki, Rafael J <rafael.j.wysocki@intel.com>; Len Brown <lenb@kernel.org> > Cc: Paul Menzel <pmenzel@molgen.mpg.de>; linux-acpi@vger.kernel.org; devel@acpica.org; linux-kernel@vger.kernel.org > Subject: [PATCH 3/4] acpi: exsystem: Warn about sleeps greater than 50 ms > > Quick boottime is important, so warn about sleeps greater than 50 ms in ACPI. > > 50 ms is still long compared to distribution Linux kernels reaching initrd in 350 ms, so should probably changed to 10 ms, so people are aware about this. > > Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de> > --- > drivers/acpi/acpica/exsystem.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/acpi/acpica/exsystem.c b/drivers/acpi/acpica/exsystem.c index 00f66af31ffa..bdffb8aac05c 100644 > --- a/drivers/acpi/acpica/exsystem.c > +++ b/drivers/acpi/acpica/exsystem.c > @@ -167,6 +167,11 @@ acpi_status acpi_ex_system_do_sleep(u64 how_long_ms) > > acpi_ex_exit_interpreter(); > > + if (how_long_ms > 50) { > + ACPI_WARNING((AE_INFO, > + "Time parameter %llu > 50 ms. Please contact firmware vendor for more responsive system.", how_long_ms)); > + } > + > /* > * For compatibility with other ACPI implementations and to prevent > * accidental deep sleeps, limit the sleep time to something reasonable. > -- > 2.35.1
On Thu, Feb 24, 2022 at 12:38 PM Paul Menzel <pmenzel@molgen.mpg.de> wrote: > > Quick boottime is important, so warn about sleeps greater than 50 ms in > ACPI. > > 50 ms is still long compared to distribution Linux kernels reaching initrd > in 350 ms, so should probably changed to 10 ms, so people are aware > about this. > > Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de> First off, as ACPICA material, this should be submitted to the upstream project via https://github.com/acpica/acpica/. > --- > drivers/acpi/acpica/exsystem.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/acpi/acpica/exsystem.c b/drivers/acpi/acpica/exsystem.c > index 00f66af31ffa..bdffb8aac05c 100644 > --- a/drivers/acpi/acpica/exsystem.c > +++ b/drivers/acpi/acpica/exsystem.c > @@ -167,6 +167,11 @@ acpi_status acpi_ex_system_do_sleep(u64 how_long_ms) > > acpi_ex_exit_interpreter(); > > + if (how_long_ms > 50) { > + ACPI_WARNING((AE_INFO, Second, the log level is somewhat high for something like this. > + "Time parameter %llu > 50 ms. Please contact firmware vendor for more responsive system.", how_long_ms)); Also, I would rephrase the warning message to something like "Firmware issue: Excessive delay (%llu ms) in ACPI Control Method". > + } > + > /* > * For compatibility with other ACPI implementations and to prevent > * accidental deep sleeps, limit the sleep time to something reasonable. > -- > 2.35.1 >
diff --git a/drivers/acpi/acpica/exsystem.c b/drivers/acpi/acpica/exsystem.c index 00f66af31ffa..bdffb8aac05c 100644 --- a/drivers/acpi/acpica/exsystem.c +++ b/drivers/acpi/acpica/exsystem.c @@ -167,6 +167,11 @@ acpi_status acpi_ex_system_do_sleep(u64 how_long_ms) acpi_ex_exit_interpreter(); + if (how_long_ms > 50) { + ACPI_WARNING((AE_INFO, + "Time parameter %llu > 50 ms. Please contact firmware vendor for more responsive system.", how_long_ms)); + } + /* * For compatibility with other ACPI implementations and to prevent * accidental deep sleeps, limit the sleep time to something reasonable.
Quick boottime is important, so warn about sleeps greater than 50 ms in ACPI. 50 ms is still long compared to distribution Linux kernels reaching initrd in 350 ms, so should probably changed to 10 ms, so people are aware about this. Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de> --- drivers/acpi/acpica/exsystem.c | 5 +++++ 1 file changed, 5 insertions(+)