On Wed, 6 Jul 2016 13:33:49 +1000 Alexey Kardashevskiy wrote: > On 06/07/16 11:35, David Gibson wrote: > > On Tue, Jul 05, 2016 at 04:42:37PM +0200, Laurent Vivier wrote: > >> As device-tree is now fully built by QEMU, we don't need SLOF > >> anymore if the kernel is provided on the command line. > >> > >> In this case, don't load SLOF and boot directly into the > >> kernel. > >> > >> This saves at least 5 seconds on the boot sequence. > >> > >> Signed-off-by: Laurent Vivier > > > > I'm not comfortable applying this. We actually used to do this ages > > ago, but changed to always running through SLOF, and there were > > reasons for doing so. > > > > I don't remember exactly what they were, but I think it boiled down to > > slight differences in state between booting from SLOF and booting > > without SLOF leading to confusing errors from the guest kernel. > > > > PCI resource allocation is still done by SLOF (however having them not set > will trigger allocation in the guest but this is rather unexpected > workaround than a feature); "client-architecture-support" won't work > without SLOF either (i.e. compatibile PowerISA 2.0x CPUs). > Not even sure the workaround actually works: I retried with a ppc64le guest and this time I get: [ 1.055922] virtio-pci 0000:00:01.0: virtio_pci: leaving for legacy driver [ 1.056048] virtio-pci: probe of 0000:00:01.0 failed with error -12 [ 1.056263] virtio-pci 0000:00:00.0: virtio_pci: leaving for legacy driver [ 1.056373] virtio-pci: probe of 0000:00:00.0 failed with error -12 i.e. virtio_reset() isn't called during probing :-\ -- Greg