Hi,

> From: Octavian Purdila [mailto:octavian.purd...@intel.com]
> Subject: Re: [RFC PATCH 02/10] acpi: install SSDT tables from initrd
> 
> On Fri, Apr 1, 2016 at 1:11 PM, Octavian Purdila
> <octavian.purd...@intel.com> wrote:
> > On Fri, Apr 1, 2016 at 8:05 AM, Zheng, Lv <lv.zh...@intel.com> wrote:
> >> Hi,
> >>
> >> IMO, there is already a similar function upstreamed:
> >>
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c85c
> c81
> >> Could it work for your use case?
> >
> > Yes, it is basically the same.
> >
> > The only difference is on how we handle taint. I think we should use a
> > new taint for overlays and that we don't need to disable lockdep.
> >
> > BTW, why is lockdep disabled when we override?
> 
> The other thing I forgot to mention is that I think we should allow
> installing new tables even if CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not
> selected. IMO the override and overlay functionality is different,
> with the latter being more then a debug option.
[Lv Zheng] 
I don't think so. The initrd override mechanism is not dependent on 
CONFIG_ACPI_DEBUG.
According to the spec, we can allow a higher versioning same table (same table 
sig, table id, table oem id) to override the old tables as a patching 
functionality.
So both the functionalities are not debug options and serve for the same 
purpose from this point of view.
And IMO that's why the initrd override mechanism needn't be dependent on 
CONFIG_ACPI_DEBUG.

I'm really OK with removing the acpi_table_taint() for 
CONFIG_ACPI_INITRD_TABLE_OVERRIDE but leaving some info messages indicating the 
table upgrades.
I don't think this mechanism is unsafe.
It happens during a initialization step occurring before the table is loaded 
and hence should be safe even the synchronization is not so robust in ACPICA.
And with the revision support added, we should be able to allow vendors to 
update the buggy tables.
That means the tables may be originated from the safe sources - the vendors.

> 
> I will prepare a patch for the next version of the series to decouple
> installing new tables from CONFIG_ACPI_INITRD_TABLE_OVERRIDE.
[Lv Zheng] 
I don't think they need to be decoupled.
The use case is:
If there is an ACPI table in initrd image and:
1. if the table's revision is higher than the existing one, override the 
existing one;
2. if the table is a brand new one, install it.

Thanks and best regards
-Lv

Reply via email to