From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.6 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6D750C4332F for ; Tue, 7 Sep 2021 07:22:40 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 52BC46109D for ; Tue, 7 Sep 2021 07:22:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233719AbhIGHXp (ORCPT ); Tue, 7 Sep 2021 03:23:45 -0400 Received: from mx3.molgen.mpg.de ([141.14.17.11]:47925 "EHLO mx1.molgen.mpg.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S231324AbhIGHXm (ORCPT ); Tue, 7 Sep 2021 03:23:42 -0400 Received: from [192.168.0.4] (ip5f5aef5b.dynamic.kabel-deutschland.de [95.90.239.91]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: pmenzel) by mx.molgen.mpg.de (Postfix) with ESMTPSA id A522C61E5FE00; Tue, 7 Sep 2021 09:22:33 +0200 (CEST) Subject: Re: New warning: PRMT not present (was: not found) To: Aubrey Li , "Rafael J. Wysocki" Cc: "Rafael J. Wysocki" , Len Brown , ACPI Devel Maling List , LKML References: <64150c95-3f7d-d21f-d6fb-b9d478ed6798@molgen.mpg.de> <766862fc-80fa-775b-6e63-6d9422d1d258@molgen.mpg.de> <54b6f8cb-4714-587c-b2d0-98134473293d@linux.intel.com> From: Paul Menzel Message-ID: Date: Tue, 7 Sep 2021 09:22:33 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: <54b6f8cb-4714-587c-b2d0-98134473293d@linux.intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Dear Aubrey, Thank you very much for quick reply. Am 07.09.21 um 05:26 schrieb Aubrey Li: > On 9/6/21 10:15 PM, Paul Menzel wrote: >> Am 06.09.21 um 14:02 schrieb Rafael J. Wysocki: >>> >>> This should be addressed by commit 2bbfa0addd63 "ACPI: PRM: Deal with >>> table not present or no module found", or yet another fix is needed. >> >> Linux still warns on my systems with Linux 5.14 and Linus’ master in QEMU i440fx and an Asus F2A85-M PRO. > > Does the following patch address your problem? Yes, it does. With this patch cherry-picked to my Linux tree, the warning is gone in QEMU. qemu-system-x86_64 -kernel /dev/shm/bzImage -append "earlyprintk=serial,ttyS0,keep console=ttyS0,115200 console=tty0" -display none -serial stdio (I have to check my configuration, why normal serial console does not work in QEMU.) > ---------------------------------------------------------------------- > From 52fda76410fcb7a3661687e960634d34fa44fb5f Mon Sep 17 00:00:00 2001 > From: Aubrey Li > Date: Tue, 7 Sep 2021 11:06:59 +0800 > Subject: [PATCH] ACPI/RPM: Find PRMT table before parse it What does RPM mean? > Find and verify PRMT table before parse it, this eliminates a > warning on machines without PRMT table. Please paste the warning for people grepping the commit messages. ACPI: PRMT not present > Signed-off-by: Aubrey Li > --- > drivers/acpi/prmt.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/drivers/acpi/prmt.c b/drivers/acpi/prmt.c > index 1f6007a..89c22bc 100644 > --- a/drivers/acpi/prmt.c > +++ b/drivers/acpi/prmt.c > @@ -288,10 +288,18 @@ static acpi_status acpi_platformrt_space_handler(u32 function, > > void __init init_prmt(void) > { > + struct acpi_table_header *tbl; > acpi_status status; > - int mc = acpi_table_parse_entries(ACPI_SIG_PRMT, sizeof(struct acpi_table_prmt) + > + int mc; > + > + status = acpi_get_table(ACPI_SIG_PRMT, 0, &tbl); > + if (ACPI_FAILURE(status)) > + return; > + > + mc = acpi_table_parse_entries(ACPI_SIG_PRMT, sizeof(struct acpi_table_prmt) + > sizeof (struct acpi_table_prmt_header), > 0, acpi_parse_prmt, 0); > + acpi_put_table(tbl); > /* > * Return immediately if PRMT table is not present or no PRM module found. > */ > Tested-by: Paul Menzel Kind regards, Paul