lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9844dd71-4969-4115-bc8c-63ced7d61bbf@gmail.com>
Date: Tue, 18 Feb 2025 19:19:43 +0000
From: "Colin King (gmail)" <colin.i.king@...il.com>
To: "Rafael J. Wysocki" <rafael@...nel.org>,
 Saket Dumbre <saket.dumbre@...el.com>
Cc: Len Brown <lenb@...nel.org>, linux-acpi@...r.kernel.org,
 linux-kernel@...r.kernel.org
Subject: Re: [PATCH][next] ACPI: OSL: ratelimit ACPICA kernel messages

On 18/02/2025 19:13, Rafael J. Wysocki wrote:
> +Saket Dumbre
> 
> On Thu, Feb 13, 2025 at 7:16 PM Colin Ian King <colin.i.king@...il.com> wrote:
>>
>> In cases where the ACPI AML contains errors there can be quite a large
>> amount of ACPICA kernel log spamming.
> 
> Except when someone wants to see them all which also happens.
> 
> And wouldn't this also rate limit debug messages from ACPICA
> specifically enabled via the kernel command line?
> 
> If so, I'd rather find a way to tell ACPICA to be less verbose.

Yep, makes sense Rafael. The crux of the matter is that there should be 
some way to reduce repeated identical "ACPI BIOS Error" messages, 
especially when the AML is triggering this 10+ times a second :-)

Colin

> 
>> Reduce this by rate limiting the messages.
>>
>> Signed-off-by: Colin Ian King <colin.i.king@...il.com>
>> ---
>>   drivers/acpi/osl.c | 20 ++++++++++++--------
>>   1 file changed, 12 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
>> index 5ff343096ece..d4ece68e0fd6 100644
>> --- a/drivers/acpi/osl.c
>> +++ b/drivers/acpi/osl.c
>> @@ -159,17 +159,21 @@ void __printf(1, 0) acpi_os_vprintf(const char *fmt, va_list args)
>>          if (acpi_in_debugger) {
>>                  kdb_printf("%s", buffer);
>>          } else {
>> -               if (printk_get_level(buffer))
>> -                       printk("%s", buffer);
>> -               else
>> -                       printk(KERN_CONT "%s", buffer);
>> +               if (printk_ratelimit()) {
>> +                       if (printk_get_level(buffer))
>> +                               printk("%s", buffer);
>> +                       else
>> +                               printk(KERN_CONT "%s", buffer);
>> +               }
>>          }
>>   #else
>>          if (acpi_debugger_write_log(buffer) < 0) {
>> -               if (printk_get_level(buffer))
>> -                       printk("%s", buffer);
>> -               else
>> -                       printk(KERN_CONT "%s", buffer);
>> +               if (printk_ratelimit()) {
>> +                       if (printk_get_level(buffer))
>> +                               printk("%s", buffer);
>> +                       else
>> +                               printk(KERN_CONT "%s", buffer);
>> +               }
>>          }
>>   #endif
>>   }
>> --


Download attachment "OpenPGP_0x68C287DFC6A80226.asc" of type "application/pgp-keys" (4825 bytes)

Download attachment "OpenPGP_signature.asc" of type "application/pgp-signature" (841 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ