Re: [PATCH v2 07/20] x86, ACPI: Make acpi_initrd_override_find work with 32bit flat mode

Tejun Heo
2013-04-04T18:36:05Z

Hello,

On Sat, Mar 09, 2013 at 10:44:34PM -0800, Yinghai Lu wrote:
> For finding with 32bit, it would be easy to access initrd in 32bit
> flat mode, as we don't need to set page table.
>
> That is from head_32.S, and microcode updating already use this trick.
>
> Need to change acpi_initrd_override_find to use phys to access global
> variables.
>
> Pass is_phys in the function, as we can not use address to decide if it
> is phys or virtual address on 32 bit. Boot loader could load initrd above
> max_low_pfn.
>
> Don't call printk as it uses global variables, so delay print later
> during copying.
>
> Change table_sigs to use stack instead, otherwise it is too messy to change
> string array to phys and still keep offset calculating correct.
> That size is about 36x4 bytes, and it is small to settle in stack.
>
> Also remove "continue" in MARCO to make code more readable.

It'd be nice if the error message can be stored somewhere and then
printed out after the system is in proper address mode if that isn't
too complex to achieve. If it gets too messy, no need to bother.

Thanks.

--
tejun