[lkml]   [2013]   [Aug]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH v2 RESEND 05/18] x86, ACPICA: Split acpi_boot_table_init() into two parts.
Hi Rafael,

On 08/02/2013 09:00 PM, Rafael J. Wysocki wrote:
>> This patch splits acpi_boot_table_init() into two steps:
>> 1. Parse RSDT, which cannot be overrided, and initialize
>> acpi_gbl_root_table_list. (step 1 + 2 above)
>> 2. Install all ACPI tables into acpi_gbl_root_table_list.
>> (step 3 + 4 above)
>> In later patches, we will do step 1 + 2 earlier.
> Please note that Linux is not the only user of the code you're modifying, so
> you need to make it possible to use the existing functions.
> In particular, acpi_tb_parse_root_table() can't be modified the way you did it,
> because that would require all of the users of ACPICA to be modified.

OK, I understand it. Then how about acpi_tb_install_table() ?

acpi_tb_install_table() is also an ACPICA API. But can we split the
acpi_initrd_table_override part out ? Like the following:

1. Initialize acpi_gbl_root_table_list earlier, and install all tables
provided by firmware.
2. Find SRAT in initrd. If no overridden SRAT, get the SRAT in
directly. And mark hotpluggable memory. (This the job I want to do.)
3. DO acpi_initrd_table_override job.

Finally it will work like the current kernel. The only difference is:
Before the patch-set, it try to do override first, and then install
firmware tables.
After the patch-set, it installs firmware tables, and then do the override.


 \ /
  Last update: 2013-08-05 05:41    [W:0.187 / U:5.376 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site