On Wed, Jan 11, 2012 at 9:22 PM, Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote: > > Amit Shah (12): > virtio: pci: switch to new PM API Hmm. Afaik, this is broken, or at least not complete. Sure, it switches to the new PM API, but it still does the PCI ops itself. It should not need to - the PCI layer will do the power state and standard PCI device state saving. And setting the PCI_D3hot state when shared interrupts can still happen at suspend time is just a bad idea. So I think you're doing extra work and introducing bugs by doing so - the default PCI bus operations should already do all you do, just do it better. And then you can use the SIMPLE_DEV_PM_OPS() to build the dev_pm_ops structure and get all the normal cases right automatically. I don't know if there is any particularly good example of this, but you can see some of the network drivers for examples of this. Notice how they don't need to worry about PCI power states etc at all, they just need to worry about the actual chip suspend/resume (and for a network driver, you'd do the netif_device_detach/netif_device_attach etc) Linus _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization