Initial support for kernel 6.4 https://www.virtualbox.org/changeset/99666/vbox Upstream-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] Signed-off-by: Bruce Ashfield --- a/src/VBox/Additions/linux/sharedfolders/regops.c +++ b/src/VBox/Additions/linux/sharedfolders/regops.c @@ -75,4 +75,11 @@ #if RTLNX_VER_MAX(2,5,12) # define PageUptodate(a_pPage) Page_Uptodate(a_pPage) +#endif + +/** Starting from 6.4.0, iter_iov() macro should be used in order to access to iov field. */ +#if RTLNX_VER_MIN(6,4,0) +# define VBOX_ITER_IOV(_iter) iter_iov(_iter) +#else +# define VBOX_ITER_IOV(_iter) iter->iov #endif @@ -2400,5 +2407,5 @@ if (iter_is_iovec(iter) || (VBSF_GET_ITER_TYPE(iter) & ITER_KVEC)) { # endif - const struct iovec *pCurIov = iter->iov; + const struct iovec *pCurIov = VBOX_ITER_IOV(iter); size_t cLeft = iter->nr_segs; size_t cPagesSpan = 0;