linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Huang Ying <ying.huang@intel.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Len Brown <lenb@kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Luck, Tony" <tony.luck@intel.com>,
	"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
	Yinghai Lu <yinghai@kernel.org>
Subject: Re: [PATCH 4/8] ACPI, APEI, Resolve false conflict between ACPI NVS and APEI
Date: Wed, 21 Sep 2011 09:43:48 +0800	[thread overview]
Message-ID: <4E794154.6000605@intel.com> (raw)
In-Reply-To: <CAErSpo5pUY8g7U0NeUe+Yf+R8kraExZN3Sheo6h+fb9B+RO7rw@mail.gmail.com>

On 09/21/2011 12:26 AM, Bjorn Helgaas wrote:
> On Mon, Sep 19, 2011 at 8:34 PM, Huang Ying <ying.huang@intel.com> wrote:
>> On 09/20/2011 10:09 AM, Bjorn Helgaas wrote:
>>> On Mon, Sep 19, 2011 at 7:38 PM, Huang Ying <ying.huang@intel.com> wrote:
>>>> Some firmware will access memory in ACPI NVS region via APEI.  That
>>>> is, instructions in APEI ERST/EINJ table will read/write ACPI NVS
>>>> region.  The original resource conflict checking in APEI code will
>>>> check memory/ioport accessed by APEI via general resource management
>>>> mech.  But ACPI NVS region is marked as busy already, so that the
>>>> false resource conflict will prevent APEI ERST/EINJ to work.
>>>>
>>>> To fix this, this patch excludes ACPI NVS regions when APEI components
>>>> request resources.  So that they will not conflict with ACPI NVS
>>>> regions.
>>>
>>> I think this is much, much too complicated.
>>>
>>> Yinghai's three-line e820.c patch to leave ACPI NVS regions in the
>>> iomem_resource tree, but as not busy, is far better.
>>
>> ACPI NVS should only be used by firmware or firmware interpreter instead
>> of the ordinary drivers.  So I think that is reasonable to make it busy
>> in iomem resource tree.
> 
> "My driver is not like ordinary drivers" is a common excuse for adding
> special cases. I don't buy it.
> 
> These patches (3 and 4) add a lot of complexity but I don't believe
> they add any real protection.
> 
> Regions are marked busy by their owners, i.e., by drivers that claim
> devices and know how to operate them.  The e820 code is not an owner
> of ACPI NVS regions, so it should not mark them busy.
> 
> I don't really think we have a problem here that needs to be solved.
> Ordinary drivers have no way of learning an address in ACPI NVS, so
> they aren't even going to try to use it.

So what resource conflict checking is for?  If something wrong with
driver configuration, resource description in ACPI table etc, the driver
may request iomem inside ACPI NVS regions.

ACPI NVS regions already have a user, that is the ACPI AML interpreter,
so it is always busy.

Best Regards,
Huang Ying

  reply	other threads:[~2011-09-21  1:43 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-20  1:38 [PATCH 0/8] ACPI, APEI patches for 3.2 Huang Ying
2011-09-20  1:38 ` [PATCH 1/8] ACPI, APEI, Print resource errors in conventional format Huang Ying
2011-09-20  1:38 ` [PATCH 2/8] ACPI, APEI, Remove table not found message Huang Ying
2011-09-20  1:38 ` [PATCH 3/8] ACPI, Record ACPI NVS regions Huang Ying
2011-09-20  1:38 ` [PATCH 4/8] ACPI, APEI, Resolve false conflict between ACPI NVS and APEI Huang Ying
2011-09-20  2:09   ` Bjorn Helgaas
2011-09-20  2:34     ` Huang Ying
2011-09-20 16:26       ` Bjorn Helgaas
2011-09-21  1:43         ` Huang Ying [this message]
2011-09-21  4:23           ` Bjorn Helgaas
2011-09-20  1:38 ` [PATCH 5/8] ACPI, APEI, EINJ, Fix resource conflict on some machine Huang Ying
2011-09-20  2:58   ` Chen Gong
2011-09-20  1:38 ` [PATCH 6/8] ACPI, Add RAM mapping support to ACPI atomic IO support Huang Ying
2011-09-20  1:39 ` [PATCH 7/8] ACPI, APEI, GHES: Add PCIe AER recovery support Huang Ying
2011-09-20  1:39 ` [PATCH 8/8] ACPI, APEI, GHES, Distinguish interleaved error report in kernel log Huang Ying

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=4E794154.6000605@intel.com \
    --to=ying.huang@intel.com \
    --cc=bhelgaas@google.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tony.luck@intel.com \
    --cc=yinghai@kernel.org \
    /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).