summaryrefslogtreecommitdiffstats
path: root/meta-oe
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@gmail.com>2023-07-04 16:11:21 +0000
committerKhem Raj <raj.khem@gmail.com>2023-07-04 09:20:13 -0700
commit26a65327ef3803c51c818f788c2929abec29705d (patch)
tree789d53e1ce50e225bac8d5222a0881d6c9619ff6 /meta-oe
parentc4622575ff170e859aca4e9fe266e7c2a209799b (diff)
downloadmeta-openembedded-26a65327ef3803c51c818f788c2929abec29705d.tar.gz
vboxguestdrivers: fix compilation against 6.4 kernel / headers
The vboxguest drivers (vboxsf) fail to build against the 6.4 kernel due to iovec iterator changes. This is a port of the gentoo patches (which are picked from the upstream virtualbox repository) to address the compilation issues. We obviously can drop these when the next version of the guest additions is available. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe')
-rw-r--r--meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch29
-rw-r--r--meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch43
-rw-r--r--meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.8.bb2
3 files changed, 74 insertions, 0 deletions
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch
new file mode 100644
index 000000000..37ef3a9d5
--- /dev/null
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch
@@ -0,0 +1,29 @@
1Initial support for kernel 6.4
2https://www.virtualbox.org/changeset/99666/vbox
3
4Upstream-Status: Backport [https://gitweb.gentoo.org/repo/gentoo.git/tree/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch]
5
6Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
7
8--- a/src/VBox/Additions/linux/sharedfolders/regops.c
9+++ b/src/VBox/Additions/linux/sharedfolders/regops.c
10@@ -75,4 +75,11 @@
11 #if RTLNX_VER_MAX(2,5,12)
12 # define PageUptodate(a_pPage) Page_Uptodate(a_pPage)
13+#endif
14+
15+/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field. */
16+#if RTLNX_VER_MIN(6,4,0)
17+# define VBOX_ITER_IOV(_iter) iter_iov(_iter)
18+#else
19+# define VBOX_ITER_IOV(_iter) iter->iov
20 #endif
21
22@@ -2400,5 +2407,5 @@
23 if (iter_is_iovec(iter) || (VBSF_GET_ITER_TYPE(iter) & ITER_KVEC)) {
24 # endif
25- const struct iovec *pCurIov = iter->iov;
26+ const struct iovec *pCurIov = VBOX_ITER_IOV(iter);
27 size_t cLeft = iter->nr_segs;
28 size_t cPagesSpan = 0;
29
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch
new file mode 100644
index 000000000..20c8fbd3f
--- /dev/null
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch
@@ -0,0 +1,43 @@
1Initial support for kernel 6.4
2https://www.virtualbox.org/changeset/99667/vbox
3
4
5Upstream-Status: Backport [https://gitweb.gentoo.org/repo/gentoo.git/tree/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch]
6
7Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
8
9--- a/src/VBox/Additions/linux/sharedfolders/regops.c
10+++ b/src/VBox/Additions/linux/sharedfolders/regops.c
11@@ -77,11 +77,4 @@
12 #endif
13
14-/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field. */
15-#if RTLNX_VER_MIN(6,4,0)
16-# define VBOX_ITER_IOV(_iter) iter_iov(_iter)
17-#else
18-# define VBOX_ITER_IOV(_iter) iter->iov
19-#endif
20-
21
22 /*********************************************************************************************************************************
23@@ -94,4 +87,12 @@
24 #else
25 # define VBSF_GET_ITER_TYPE(a_pIter) ((a_pIter)->type)
26+#endif
27+
28+/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field
29+ * of struct iov_iter. */
30+#if RTLNX_VER_MIN(6,4,0)
31+# define VBSF_GET_ITER_IOV(_iter) iter_iov(_iter)
32+#else
33+# define VBSF_GET_ITER_IOV(_iter) iter->iov
34 #endif
35
36@@ -2407,5 +2408,5 @@
37 if (iter_is_iovec(iter) || (VBSF_GET_ITER_TYPE(iter) & ITER_KVEC)) {
38 # endif
39- const struct iovec *pCurIov = VBOX_ITER_IOV(iter);
40+ const struct iovec *pCurIov = VBSF_GET_ITER_IOV(iter);
41 size_t cLeft = iter->nr_segs;
42 size_t cPagesSpan = 0;
43
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.8.bb b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.8.bb
index ed3e429b3..233323bf7 100644
--- a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.8.bb
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.8.bb
@@ -13,6 +13,8 @@ VBOX_NAME = "VirtualBox-${PV}"
13 13
14SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \ 14SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
15 file://Makefile.utils \ 15 file://Makefile.utils \
16 file://virtualbox-guest-additions-7.0.8-kernel-6.4-patch-1.patch \
17 file://virtualbox-guest-additions-7.0.8-kernel-6.4-patch-2.patch \
16" 18"
17 19
18SRC_URI[sha256sum] = "c305fbe480f507eac7c36893ead66dffaacda944f19c3813a4533e9c39bae237" 20SRC_URI[sha256sum] = "c305fbe480f507eac7c36893ead66dffaacda944f19c3813a4533e9c39bae237"