43c590cb86
The UM virtual PCI devices currently cannot be suspended properly since the virtio driver already disables VQs well before the PCI bus's suspend_noirq wants to complete the transition by writing to PCI config space. After trying around for a long time with moving the devices on the DPM list, trying to create dependencies between them, etc. I gave up and instead added UML specific cross-driver API that lets the virt-pci code enable not suspending/resuming VQs for its devices. This then allows the PCI bus suspend_noirq to still talk to the device, and suspend/resume works properly. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Richard Weinberger <richard@nod.at>
14 lines
311 B
C
14 lines
311 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* Copyright (C) 2021 Intel Corporation
|
|
* Author: Johannes Berg <johannes@sipsolutions.net>
|
|
*/
|
|
|
|
#ifndef __VIRTIO_UML_H__
|
|
#define __VIRTIO_UML_H__
|
|
|
|
void virtio_uml_set_no_vq_suspend(struct virtio_device *vdev,
|
|
bool no_vq_suspend);
|
|
|
|
#endif /* __VIRTIO_UML_H__ */
|