linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Al Stone <ahs3@redhat.com>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Sudeep Holla <sudeep.holla@arm.com>
Cc: Hanjun Guo <hanjun.guo@linaro.org>,
	Pat Erley <pat-lkml@erley.org>,
	linaro-kernel@lists.linaro.org, linux-ia64@vger.kernel.org,
	patches@linaro.org, linux-pm@vger.kernel.org,
	linux-kernel@vger.kernel.org, linaro-acpi@lists.linaro.org,
	linux-acpi@vger.kernel.org, Hanjun Guo <guohanjun@huawei.com>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [Linaro-acpi] [PATCH v5 0/5] Provide better MADT subtable sanity checks
Date: Mon, 12 Oct 2015 13:07:31 -0600	[thread overview]
Message-ID: <561C04F3.2010507@redhat.com> (raw)
In-Reply-To: <32835486.gnkKHR2R1U@vostro.rjw.lan>

On 10/12/2015 01:25 PM, Rafael J. Wysocki wrote:
> On Monday, October 12, 2015 10:44:52 AM Sudeep Holla wrote:
>>
>> On 12/10/15 08:04, Hanjun Guo wrote:
>>> On 10/12/2015 11:58 AM, Pat Erley wrote:
>>>> On 10/11/2015 08:49 PM, Hanjun Guo wrote:
>>>>> On 10/12/2015 11:08 AM, Pat Erley wrote:
>>>>>> On 10/05/2015 10:12 AM, Al Stone wrote:
>>>>>>> On 10/05/2015 07:39 AM, Rafael J. Wysocki wrote:
>>>>>>>> On Wednesday, September 30, 2015 10:10:16 AM Al Stone wrote:
>>>>>>>>> On 09/30/2015 03:00 AM, Hanjun Guo wrote:
>>>>>>>>>> On 2015/9/30 7:45, Al Stone wrote:
>>>>>>>>>>> NB: this patch set is for use against the linux-pm bleeding edge
>>>>>>>>>>> branch.
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> [snip...]
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> For this patch set,
>>>>>>>>>>
>>>>>>>>>> Reviewed-by: Hanjun Guo <hanjun.guo@linaro.org>
>>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>> Hanjun
>>>>>>>>>
>>>>>>>>> Thanks, Hanjun!
>>>>>>>>
>>>>>>>> Series applied, thanks!
>>>>>>>>
>>>>>>>> Rafael
>>>>>>>>
>>>>>>>
>>>>>>> Thanks, Rafael!
>>>>>>>
>>>>>>
>>>>>> Just decided to test out linux-next (to see the new nouveau cleanups).
>>>>>> This change set prevents my Lenovo W510 from booting properly.
>>>>>>
>>>>>> Reverting: 7494b0 "ACPI: add in a bad_madt_entry() function to
>>>>>> eventually replace the macro"
>>>>>>
>>>>>> Gets the system booting again.  I'm attaching my dmesg from the failed
>>>>>> boot, who wants the acpidump?

Thanks for sending this!

>>>>> [    0.000000] ACPI: undefined version for either FADT 4.0 or MADT 1
>>>>> [    0.000000] ACPI: Error parsing LAPIC address override entry
>>>>> [    0.000000] ACPI: Invalid BIOS MADT, disabling ACPI
>>>>>
>>>>> Seems the MADT revision is not right, could you dump the ACPI MADT
>>>>> (APIC) table and send it out? I will take a look :)
>>>>>
>>>>> Thanks
>>>>> Hanjun
>>>>
>>>> Here ya go, enjoy.  Feel free to CC me on any patches that might fix it.
>>>
>>> Thanks! I think I had the right guess, the MADT revision is not right
>>> for ACPI 4.0:
>>>
>>> [000h 0000   4]                    Signature : "APIC"    [Multiple APIC
>>> Description Table (MADT)]
>>> [004h 0004   4]                 Table Length : 000000BC
>>> [008h 0008   1]                     *Revision : 01*
>>>
>>> I encountered such problem before because the table was just copied from
>>> previous version, and without the update for table revision.
>>>
>>> I think we may need to ignore the table revision for x86, but restrict
>>> it for ARM64, I'd like Al and Rafael's suggestion before I send out a
>>> patch.
>>>
>>
>> Instead of just removing the check completely on x86, IMO restrict it to
>> some newer/later version of ACPI so you can still force vendors to fix
>> their ACPI tables at-least in future.
> 
> No, we can't force vendors to fix their ACPI tables.  This is completely
> unrealistic.
> 
> We simly need to deal with the bugs in the ACPI tables in the kernel.

Unfortunately true.  I've had a couple of reports to look at and think
through apart from this; it's really quite fascinating how much stuff
a slightly stricter table check is turning up.  A little surprising,
too, but fascinating.  A fix is in progress, still needs some testing...

>> It would be good to get such sanity check in the tools used to build
>> those tables, but yes since such static tables can be built in many
>> ways, its difficult to deal it in all those tools.
> 
> As I said to Al, we need those checks in firmware test suites.  Having
> them in the kernel is OK too, but they should cause warnings to be printed
> to the kernel log instead of causing the kernel to panic.
> 
> Thanks,
> Rafael
> 

Yup.  Agreed.  For x86, we can't induce kernel panics.  Since arm64 is new to
the game, we'll be stricter since we can afford to be for now.

-- 
ciao,
al
-----------------------------------
Al Stone
Software Engineer
Red Hat, Inc.
ahs3@redhat.com
-----------------------------------

  reply	other threads:[~2015-10-12 19:07 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-29 23:45 [PATCH v5 0/5] Provide better MADT subtable sanity checks Al Stone
2015-09-29 23:45 ` [PATCH v5 1/5] ACPI: add in a bad_madt_entry() function to eventually replace the macro Al Stone
2015-09-29 23:45 ` [PATCH v5 2/5] ACPI / ARM64: remove usage of BAD_MADT_ENTRY/BAD_MADT_GICC_ENTRY Al Stone
2015-09-29 23:45 ` [PATCH v5 3/5] ACPI / IA64: remove usage of BAD_MADT_ENTRY Al Stone
2015-09-29 23:45 ` [PATCH v5 4/5] ACPI / X86: " Al Stone
2015-09-29 23:45 ` [PATCH v5 5/5] ACPI: remove definition of BAD_MADT_ENTRY macro Al Stone
2015-09-30  9:00 ` [PATCH v5 0/5] Provide better MADT subtable sanity checks Hanjun Guo
2015-09-30 16:10   ` Al Stone
2015-10-05 13:39     ` Rafael J. Wysocki
2015-10-05 17:12       ` Al Stone
2015-10-12  3:08         ` Pat Erley
2015-10-12  3:49           ` [Linaro-acpi] " Hanjun Guo
2015-10-12  3:58             ` Pat Erley
2015-10-12  7:04               ` Hanjun Guo
2015-10-12  9:44                 ` Sudeep Holla
2015-10-12 13:04                   ` Hanjun Guo
2015-10-12 19:25                   ` Rafael J. Wysocki
2015-10-12 19:07                     ` Al Stone [this message]
2015-10-13  8:43                     ` Sudeep Holla
2015-10-12 19:21                 ` Rafael J. Wysocki
2015-10-13  1:23                   ` Hanjun Guo
2015-10-12 20:52               ` Al Stone
2015-10-13  4:06                 ` Pat Erley
2015-10-14 20:20                   ` Al Stone
2015-10-14 21:25                     ` Rafael J. Wysocki
2015-10-14 21:27                       ` Al Stone

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=561C04F3.2010507@redhat.com \
    --to=ahs3@redhat.com \
    --cc=guohanjun@huawei.com \
    --cc=hanjun.guo@linaro.org \
    --cc=linaro-acpi@lists.linaro.org \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=pat-lkml@erley.org \
    --cc=patches@linaro.org \
    --cc=rjw@rjwysocki.net \
    --cc=sudeep.holla@arm.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).