void-packages/srcpkgs/nvidia304/files/disable-mtrr.patch
2016-05-28 18:05:24 +02:00

24 lines
874 B
Diff

Author: Luca Boccassi <luca.boccassi@gmail.com>
Description: Disable MTRR on kernel >= 4.3
From kernel 4.3 and newer (commit 2baa891e42d84) mtrr_add and mtrr_del are no
longer exported. The Nvidia kernel shim still uses it as of 304.131, causing
the module to error out when loading. Disable MTRR if running on 4.3 or greater
until upstream fixes it.
--- kernel/nv-linux.h
+++ kernel/nv-linux.h
@@ -254,6 +254,15 @@ RM_STATUS nvos_forward_error_to_cray(struct pci_dev *, NvU32,
#include <linux/seq_file.h>
#endif
+/*
+ * As of version 304.131, os-agp.c and os-mtrr.c still use deprecated
+ * kernel APIs for mtrr which are no longer exported since 4.3, causing
+ * the module to error out when loaded.
+ */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0)
+#undef CONFIG_MTRR
+#endif
+
#if !defined(NV_VMWARE) && defined(CONFIG_MTRR)
#include <asm/mtrr.h>
#endif