On Fri, Apr 01, 2016 at 04:06:23PM +0100, Richard W.M. Jones wrote: > On Fri, Apr 01, 2016 at 10:58:19AM -0400, Kevin O'Connor wrote: > > On Fri, Apr 01, 2016 at 09:44:56AM +0100, Richard W.M. Jones wrote: > > > On Fri, Apr 01, 2016 at 10:24:37AM +0200, Paolo Bonzini wrote: > > > > On 01/04/2016 10:14, Richard W.M. Jones wrote: > > > > > Found it: only CONFIG_MPTABLE=y was necessary. It boots with: > > > > > > > > > > # CONFIG_PIRTABLE is not set > > > > > CONFIG_MPTABLE=y > > > > > # CONFIG_SMBIOS is not set > > > > > # CONFIG_ACPI is not set > > > > > > > > If you add all three it should not give any slowdown and will provide > > > > full hardware features to the kernel. qboot does ACPI and PCI bus > > > > assignment (it doesn't do SMBIOS because I got bored debugging it. :)) > > > > > > Enabling all 4 adds about 2ms. > > > > CONFIG_SMBIOS and CONFIG_ACPI only control the legacy internal bios > > tables. One would disable CONFIG_FW_ROMFILE_LOAD to disable the newer > > ACPI tables; there is no config option currently to disable the newer > > smbios tables. > > > > These config names are a bit misleading, so they probably should be > > changed in seabios. > > > > I didn't expect disabling the above options to do anything besides > > reduce the size of the seabios binary, so I'm a bit suprised it saved > > 2ms. Did you have something on your qemu command-line to avoid > > generating acpi/smbios tables? > > The standard deviation of that number over 5 runs was 1ms, so I'm > somewhat confident the 2ms is measuring something real. In the grand > scheme of things it doesn't matter at all. > > I'm not using any qemu command line options related to acpi or smbios.
Okay - interesting. Considering you have acpi=off in linux, you might want to try timing with CONFIG_ACPI, CONFIG_SMBIOS, and CONFIG_FW_ROMFILE_LOAD all disabled. The acpi romfile loading stuff takes 4ms in my tests. It's not clear to me that disabling acpi is a good plan, but it can't hurt to time it. -Kevin