Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37048497
en ru br
ALT Linux repos
S:7.0.10-alt1.393527.1
5.0: 3.0.4-alt0.M50.132635.16
4.1: 2.1.4-alt0.M41.132633.8.M41.5

Group :: System/Kernel and hardware
RPM: kernel-modules-virtualbox-std-def

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

Patch: vboxcommon-5.4.patch
Download


diff -ur kernel-source-virtualbox-5.2.34/kernel-source-vboxdrv-5.2.34/r0drv/linux/the-linux-kernel.h kernel-source-virtualbox-5.2.34.fixed/kernel-source-vboxdrv-5.2.34/r0drv/linux/the-linux-kernel.h
--- kernel-source-vboxdrv-5.2.34/r0drv/linux/the-linux-kernel.h	2019-10-21 19:05:14.000000000 +0000
+++ kernel-source-vboxdrv-5.2.34.new/r0drv/linux/the-linux-kernel.h	2019-12-12 01:08:42.695569567 +0000
@@ -327,7 +327,11 @@
 # endif
 #endif
 
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 25)
+/* XXX The 5.4 kernel has no interface anymore to make kernel pages execcutable */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)
+# define MY_SET_PAGES_EXEC(pPages, cPages)   do {} while (0)
+# define MY_SET_PAGES_NOEXEC(pPages, cPages) do {} while (0)
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 25)
 # define MY_SET_PAGES_EXEC(pPages, cPages)    set_pages_x(pPages, cPages)
 # define MY_SET_PAGES_NOEXEC(pPages, cPages)  set_pages_nx(pPages, cPages)
 #else
@@ -374,7 +378,7 @@
 {
 	/* use the set_pages_* API */
 	if (pgprot_val(prot) & _PAGE_NX)
-		set_pages_nx(page, numpages);
+		MY_SET_PAGES_NOEXEC(page, numpages);
 	set_pages_uc(page, numpages);
 	return 0;
 }
diff -ur kernel-source-virtualbox-5.2.34/kernel-source-vboxdrv-5.2.34/include/iprt/cdefs.h kernel-source-virtualbox-5.2.34.fixed/kernel-source-vboxdrv-5.2.34/include/iprt/cdefs.h
--- kernel-source-vboxdrv-5.2.34/include/iprt/cdefs.h	2019-10-21 11:53:32.000000000 +0000
+++ kernel-source-vboxdrv-5.2.34.new/include/iprt/cdefs.h	2019-12-12 00:55:38.819038629 +0000
@@ -1113,7 +1113,7 @@
  * Tell the compiler that we're falling through to the next case in a switch.
  * @sa RT_FALL_THRU  */
 #if RT_GNUC_PREREQ(7, 0)
-# define RT_FALL_THROUGH()      __attribute__((fallthrough))
+# define RT_FALL_THROUGH()      __attribute__((__fallthrough__))
 #else
 # define RT_FALL_THROUGH()      (void)0
 #endif
 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin