On 02/19/2016 08:08 AM, Luis R. Rodriguez wrote:
There is already a check for apm_info.bios == 0, the apm_info.bios is set from the boot_params.apm_bios_info. Both Xen and lguest, which are also the only ones that set paravirt_enabled to true) do never set the apm_bios_info, the paravirt_enabled() check is simply not needed.
We need to guarantee that boot_params is filled with zeroes. On baremetal path we clear .bss (which is where boot_params live) before copying data from zero page.
So we need to at least memset(&boot_params, 0, sz) in xen_start_kernel(). Better yet, clear whole .bss.
(This applies to the next patch as well). -boris