]> git.baikalelectronics.ru Git - kernel.git/commit
virtio_mmio: Add missing PM calls to freeze/restore
authorStephan Gerhold <stephan.gerhold@kernkonzept.com>
Tue, 21 Jun 2022 11:06:20 +0000 (13:06 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 21 Jul 2022 18:59:24 +0000 (20:59 +0200)
commitc1b31788f2aafe202e0c97f55a435609c7cc23cf
treeaa4d8b306c8923347ff2ea7bb6ebec99d3e85969
parent67d2c8e2928eb24ef584cc6f3d0bf497100c2253
virtio_mmio: Add missing PM calls to freeze/restore

[ Upstream commit 361a0d1b87b96c5c55aa91547b79643d64549a6f ]

Most virtio drivers provide freeze/restore callbacks to finish up
device usage before suspend and to reinitialize the virtio device after
resume. However, these callbacks are currently only called when using
virtio_pci. virtio_mmio does not have any PM ops defined.

This causes problems for example after suspend to disk (hibernation),
since the virtio devices might lose their state after the VMM is
restarted. Calling virtio_device_freeze()/restore() ensures that
the virtio devices are re-initialized correctly.

Fix this by implementing the dev_pm_ops for virtio_mmio,
similar to virtio_pci_common.

Signed-off-by: Stephan Gerhold <stephan.gerhold@kernkonzept.com>
Message-Id: <20220621110621.3638025-2-stephan.gerhold@kernkonzept.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/virtio/virtio_mmio.c