summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2015-10-07 09:53:00 +0000
committerkettenis <kettenis@openbsd.org>2015-10-07 09:53:00 +0000
commit6a2322845436dc420316c65f14883a96dd9a047c (patch)
tree9a1fdcd860527d1500e83ef8d716ceac505a58c1
parentCouple of memory leaks in error paths, from Frederik Vanderstraeten. (diff)
downloadwireguard-openbsd-6a2322845436dc420316c65f14883a96dd9a047c.tar.xz
wireguard-openbsd-6a2322845436dc420316c65f14883a96dd9a047c.zip
In i915_gem_fault(), move the "out" label after the switch state such that we
don't interpret one of the VM_PAGER_XXX return values as an unhandled errno value and return the intended code instead of VM_PAGER_ERROR. ok jsg@
-rw-r--r--sys/dev/pci/drm/i915/i915_gem.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/pci/drm/i915/i915_gem.c b/sys/dev/pci/drm/i915/i915_gem.c
index 5741015b00f..cca867656f1 100644
--- a/sys/dev/pci/drm/i915/i915_gem.c
+++ b/sys/dev/pci/drm/i915/i915_gem.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: i915_gem.c,v 1.102 2015/09/30 06:29:09 kettenis Exp $ */
+/* $OpenBSD: i915_gem.c,v 1.103 2015/10/07 09:53:00 kettenis Exp $ */
/*
* Copyright (c) 2008-2009 Owain G. Ainsworth <oga@openbsd.org>
*
@@ -1659,7 +1659,7 @@ unlock:
uvmfault_unlockall(ufi, ufi->entry->aref.ar_amap, NULL, NULL);
mutex_unlock(&dev->struct_mutex);
pmap_update(ufi->orig_map->pmap);
-out:
+
switch (ret) {
case -EIO:
/*
@@ -1700,6 +1700,7 @@ out:
break;
}
+out:
intel_runtime_pm_put(dev_priv);
return ret;
}