summarylogtreecommitdiffstats
path: root/vmmon.patch
diff options
context:
space:
mode:
authorJean-Marc Lenoir2021-11-24 01:43:46 +0100
committerJean-Marc Lenoir2021-11-24 01:43:46 +0100
commit2ecb1665431ecadd3e5764c763aa8d89f10cd3bd (patch)
tree1382034a11228e0b78833c947e3a0751c22329ca /vmmon.patch
parentabe052eea0a8822046c0abb2422b958cdc8b7c20 (diff)
downloadaur-2ecb1665431ecadd3e5764c763aa8d89f10cd3bd.tar.gz
Compatibility with Linux 5.16-rc1
Diffstat (limited to 'vmmon.patch')
-rw-r--r--vmmon.patch66
1 files changed, 66 insertions, 0 deletions
diff --git a/vmmon.patch b/vmmon.patch
index f2e32d6d0270..56f7da0a9828 100644
--- a/vmmon.patch
+++ b/vmmon.patch
@@ -12,3 +12,69 @@
# Header directory for the running kernel
ifdef LINUXINCLUDE
+From 9a6a17fe0bc6d1ab9e0e0dfa8d587b12a21cd49e Mon Sep 17 00:00:00 2001
+From: Michal Kubecek <mkubecek@suse.cz>
+Date: Sun, 17 Oct 2021 17:06:26 +0200
+Subject: [PATCH] modules: include <linux/stdarg.h> when available
+
+Workstation/Player code changes between 16.1.2 and 16.2.0 added some
+includes of <stdarg.h> which is interpreted as regular (userspace) header
+file in /usr/include. Shortly before that, mainline commit c0891ac15f04
+("isystem: ship and use stdarg.h") added minimalistic kernel version of
+stdarg.h to avoid including userspace headers from kernel code. As the
+kernel version is sometimes included via other header files, build against
+5.15 kernel results in a lot of warnings (about redefined va_* macros).
+
+Include <stdarg.h> when building against kernel < 5.15 and <linux/stdarg.h>
+when building against kernel >= 5.15.
+---
+ vmmon-only/include/vm_assert.h | 4 ++++
+ vmnet-only/vm_assert.h | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/vmmon-only/include/vm_assert.h b/vmmon-only/include/vm_assert.h
+index 4a69dcc..2817a08 100644
+--- a/vmmon-only/include/vm_assert.h
++++ b/vmmon-only/include/vm_assert.h
+@@ -40,7 +40,11 @@
+
+ // XXX not necessary except some places include vm_assert.h improperly
+ #include "vm_basic_types.h"
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
+ #include <stdarg.h>
++#else
++#include <linux/stdarg.h>
++#endif
+
+ #ifdef __cplusplus
+ extern "C" {
+From 4232f780eb114f22498f3274eaeef81d8c63f2ab Mon Sep 17 00:00:00 2001
+From: Michal Kubecek <mkubecek@suse.cz>
+Date: Tue, 9 Nov 2021 09:01:57 +0100
+Subject: [PATCH] modules: fix stddef.h include
+
+After mainline commit 04e85bbf71c9 ("isystem: delete global -isystem
+compile option") in 5.16-rc1, vm_basic_types.h in both vmmon and vmnet
+does not find (userspace) stddef.h any more. As it should not include this
+header anyway, fix the include directives to include stddef.h from kernel.
+
+Kernel version of stddef.h has been available since the beginning of git so
+that it is safe to include it regardless of kernel version.
+---
+ vmmon-only/include/vm_basic_defs.h | 2 +-
+ vmnet-only/vm_basic_defs.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/vmmon-only/include/vm_basic_defs.h b/vmmon-only/include/vm_basic_defs.h
+index 0ec30b3..b920e2d 100644
+--- a/vmmon-only/include/vm_basic_defs.h
++++ b/vmmon-only/include/vm_basic_defs.h
+@@ -51,7 +51,7 @@
+ * C90 7.17, C99 7.19, C11 7.19
+ */
+ #if !defined(VMKERNEL)
+-# include <stddef.h>
++# include <linux/stddef.h>
+ #else
+ /*
+ * Vmkernel's bogus __FreeBSD__ value causes gcc <stddef.h> to break.