[PATCH 7/7] drm/nouveau: abort runtime suspend if we hit an error

From: Karol Herbst
Date: Wed Aug 14 2019 - 17:31:56 EST


Signed-off-by: Karol Herbst <kherbst@xxxxxxxxxx>
CC: Alex Hung <alex.hung@xxxxxxxxxxxxx>
CC: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
CC: Dave Airlie <airlied@xxxxxxxxxx>
CC: Lyude Paul <lyude@xxxxxxxxxx>
CC: Ben Skeggs <bskeggs@xxxxxxxxxx>
---
drivers/gpu/drm/nouveau/nouveau_drm.c | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
index 16441c5bf29c..b16157a9c736 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -910,6 +910,7 @@ nouveau_pmops_runtime_suspend(struct device *dev)
{
struct pci_dev *pdev = to_pci_dev(dev);
struct drm_device *drm_dev = pci_get_drvdata(pdev);
+ struct nouveau_drm *drm = nouveau_drm(drm_dev);
int ret;

if (!nouveau_pmops_runtime()) {
@@ -919,6 +920,10 @@ nouveau_pmops_runtime_suspend(struct device *dev)

nouveau_switcheroo_optimus_dsm();
ret = nouveau_do_suspend(drm_dev, true);
+ if (ret) {
+ NV_ERROR(drm, "suspend failed with: %d\n", ret);
+ return ret;
+ }
pci_save_state(pdev);
pci_disable_device(pdev);
pci_ignore_hotplug(pdev);
--
2.21.0