summaryrefslogtreecommitdiffstats
path: root/abs/core/xf86-video-vesa/revert-kernelcheck.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/xf86-video-vesa/revert-kernelcheck.patch')
-rw-r--r--abs/core/xf86-video-vesa/revert-kernelcheck.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/abs/core/xf86-video-vesa/revert-kernelcheck.patch b/abs/core/xf86-video-vesa/revert-kernelcheck.patch
new file mode 100644
index 0000000..37418cc
--- /dev/null
+++ b/abs/core/xf86-video-vesa/revert-kernelcheck.patch
@@ -0,0 +1,31 @@
+From b1f7f190f9d4f2ab63d3e9ade3e7e04bb4b1f89f Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Wed, 08 Dec 2010 18:45:32 +0000
+Subject: Refuse to load if there's a kernel driver bound to the device
+
+Ported from the equivalent check in nv.
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+diff --git a/src/vesa.c b/src/vesa.c
+index 168fde1..2523d76 100644
+--- a/src/vesa.c
++++ b/src/vesa.c
+@@ -431,8 +431,14 @@ VESAPciProbe(DriverPtr drv, int entity_num, struct pci_device *dev,
+ pScrn = xf86ConfigPciEntity(NULL, 0, entity_num, NULL,
+ NULL, NULL, NULL, NULL, NULL);
+ if (pScrn != NULL) {
+- VESAPtr pVesa = VESAGetRec(pScrn);
++ VESAPtr pVesa;
+
++ if (pci_device_has_kernel_driver(dev)) {
++ ErrorF("vesa: Ignoring device with a bound kernel driver\n");
++ return FALSE;
++ }
++
++ pVesa = VESAGetRec(pScrn);
+ VESAInitScrn(pScrn);
+ pVesa->pciInfo = dev;
+ }
+--
+cgit v0.9.0.2-2-gbebe