commit:     e413567e5b45bde18607c150e5ba1ad4c9f38cc5
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 22 16:05:20 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Apr 22 16:54:58 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e413567e

app-emulation/virtualbox: Revbump to fix LsiLogicSAS storage controller

Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../virtualbox-6.1.20-lsilogicsas_crash_fix.patch  | 41 ++++++++++++++++++++++
 ...x-6.1.20.ebuild => virtualbox-6.1.20-r1.ebuild} |  6 +++-
 2 files changed, 46 insertions(+), 1 deletion(-)

diff --git 
a/app-emulation/virtualbox/files/virtualbox-6.1.20-lsilogicsas_crash_fix.patch 
b/app-emulation/virtualbox/files/virtualbox-6.1.20-lsilogicsas_crash_fix.patch
new file mode 100644
index 00000000000..7f1e4b17983
--- /dev/null
+++ 
b/app-emulation/virtualbox/files/virtualbox-6.1.20-lsilogicsas_crash_fix.patch
@@ -0,0 +1,41 @@
+Index: /trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp
+===================================================================
+--- trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp (revision 88530)
++++ trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp (revision 88643)
+@@ -3678,8 +3678,6 @@
+     LogFlowFunc(("pThis=%#p\n", pThis));
+ 
+-    /* Clear everything first. */
+     AssertPtrReturnVoid(pThisCC->pConfigurationPages);
+     PMptConfigurationPagesSupported pPages = pThisCC->pConfigurationPages;
+-    memset(pPages, 0, sizeof(MptConfigurationPagesSupported));
+ 
+     /* Manufacturing Page 0. */
+Index: /trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.h
+===================================================================
+--- trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.h   (revision 82968)
++++ trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.h   (revision 88643)
+@@ -3327,13 +3327,17 @@
+ 
+ #define MPT_CONFIG_PAGE_HEADER_INIT_MANUFACTURING(pg, type, nr, flags) \
++    RT_ZERO(*pg); \
+     MPT_CONFIG_PAGE_HEADER_INIT(pg, type, nr, flags | 
MPT_CONFIGURATION_PAGE_TYPE_MANUFACTURING)
+ 
+ #define MPT_CONFIG_PAGE_HEADER_INIT_IO_UNIT(pg, type, nr, flags) \
++    RT_ZERO(*pg); \
+     MPT_CONFIG_PAGE_HEADER_INIT(pg, type, nr, flags | 
MPT_CONFIGURATION_PAGE_TYPE_IO_UNIT)
+ 
+ #define MPT_CONFIG_PAGE_HEADER_INIT_IOC(pg, type, nr, flags) \
++    RT_ZERO(*pg); \
+     MPT_CONFIG_PAGE_HEADER_INIT(pg, type, nr, flags | 
MPT_CONFIGURATION_PAGE_TYPE_IOC)
+ 
+ #define MPT_CONFIG_PAGE_HEADER_INIT_BIOS(pg, type, nr, flags) \
++    RT_ZERO(*pg); \
+     MPT_CONFIG_PAGE_HEADER_INIT(pg, type, nr, flags | 
MPT_CONFIGURATION_PAGE_TYPE_BIOS)
+ 
+@@ -3342,4 +3346,5 @@
+  */
+ #define MPT_CONFIG_EXTENDED_PAGE_HEADER_INIT(pg, cb, nr, flags, exttype) \
++    RT_BZERO(pg, cb); \
+     (pg)->u.fields.ExtHeader.u8PageType   = (flags) | 
MPT_CONFIGURATION_PAGE_TYPE_EXTENDED; \
+     (pg)->u.fields.ExtHeader.u8PageNumber = (nr); \

diff --git a/app-emulation/virtualbox/virtualbox-6.1.20.ebuild 
b/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.20.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
index 6af250ffce5..95da7ce00ed 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
@@ -139,6 +139,10 @@ REQUIRED_USE="
        ${PYTHON_REQUIRED_USE}
 "
 
+PATCHES=(
+       "${FILESDIR}/${P}-lsilogicsas_crash_fix.patch"
+)
+
 pkg_pretend() {
        if ! use headless && ! use qt5 ; then
                einfo "No USE=\"qt5\" selected, this build will not include any 
Qt frontend."
@@ -214,7 +218,7 @@ src_prepare() {
 
        eapply "${WORKDIR}/patches"
 
-       eapply_user
+       default
 }
 
 doecho() {

Reply via email to