Hello community, here is the log from the commit of package virtualbox for openSUSE:Factory checked in at 2020-03-03 10:13:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/virtualbox (Old) and /work/SRC/openSUSE:Factory/.virtualbox.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "virtualbox" Tue Mar 3 10:13:56 2020 rev:191 rq:780346 version:6.1.2 Changes: -------- --- /work/SRC/openSUSE:Factory/virtualbox/virtualbox.changes 2020-02-19 12:40:56.627671216 +0100 +++ /work/SRC/openSUSE:Factory/.virtualbox.new.26092/virtualbox.changes 2020-03-03 10:14:03.418379323 +0100 @@ -1,0 +2,6 @@ +Thu Feb 27 18:38:46 UTC 2020 - Larry Finger <larry.fin...@gmail.com> + +- Kernel 5.6.0-rc3 introduced some fixes for the Y2038 problem. File "fixes_for_5.6" + has been modified to handle these changes. + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ virtualbox.spec ++++++ --- /var/tmp/diff_new_pack.K1nROH/_old 2020-03-03 10:14:08.850390562 +0100 +++ /var/tmp/diff_new_pack.K1nROH/_new 2020-03-03 10:14:08.850390562 +0100 @@ -453,8 +453,9 @@ %endif %patch133 -p1 %patch134 -p1 +%if 0%{?suse_version} > 1500 %patch135 -p1 - +%endif # make VB UI background colors look sane again %patch999 -p1 ++++++ fixes_for_5.6.patch ++++++ --- /var/tmp/diff_new_pack.K1nROH/_old 2020-03-03 10:14:09.014390901 +0100 +++ /var/tmp/diff_new_pack.K1nROH/_new 2020-03-03 10:14:09.014390901 +0100 @@ -35,3 +35,72 @@ if (pMemLnx->Core.pv) { /** @todo fix protection. */ +Index: VirtualBox-6.1.2/include/iprt/time.h +=================================================================== +--- VirtualBox-6.1.2.orig/include/iprt/time.h ++++ VirtualBox-6.1.2/include/iprt/time.h +@@ -32,6 +32,24 @@ + #include <iprt/cdefs.h> + #include <iprt/types.h> + #include <iprt/assertcompile.h> ++#ifdef __KERNEL__ ++/* This header is used for both kernel- and user-space code. Beginning ++ * with v5.6.0-rc3 as part of the Y2038 conversion, several of the ++ * time handling macros were hidden. Thus, user- and kernel-space ++ * names are different. ++ */ ++#include <linux/time_types.h> ++#include <linux/version.h> ++#include <linux/time64.h> ++#include <linux/ktime.h> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 6, 0) ++#define timespec __kernel_old_timespec ++#define ktime_get_ts ktime_get_ts64 ++#undef time_t ++#define time_t ktime_t ++#define timeval __kernel_old_timeval ++#endif /* kernel version >= 5.6.0 */ ++#endif /* __KERNEL__ */ + + RT_C_DECLS_BEGIN + +@@ -433,12 +451,6 @@ DECLINLINE(PRTTIMESPEC) RTTimeSpecSetTim + } + + +-# ifdef _LINUX_TIME64_H +-DECLINLINE(PRTTIMESPEC) RTTimeSpecSetTimespec64(PRTTIMESPEC pTime, const struct timespec64 *pTimeval) +-{ +- return RTTimeSpecAddNano(RTTimeSpecSetSeconds(pTime, pTimeval->tv_sec), pTimeval->tv_nsec); +-} +-# endif + #endif /* various ways of detecting struct timespec */ + + +Index: VirtualBox-6.1.2/src/VBox/Runtime/r0drv/linux/time-r0drv-linux.c +=================================================================== +--- VirtualBox-6.1.2.orig/src/VBox/Runtime/r0drv/linux/time-r0drv-linux.c ++++ VirtualBox-6.1.2/src/VBox/Runtime/r0drv/linux/time-r0drv-linux.c +@@ -35,6 +35,10 @@ + #include <iprt/asm.h> + + ++DECLINLINE(PRTTIMESPEC) RTTimeSpecSetTimespec64(PRTTIMESPEC pTime, const struct timespec64 *pTimeval) ++{ ++ return RTTimeSpecAddNano(RTTimeSpecSetSeconds(pTime, pTimeval->tv_sec), pTimeval->tv_nsec); ++} + + DECLINLINE(uint64_t) rtTimeGetSystemNanoTS(void) + { +@@ -43,7 +47,11 @@ DECLINLINE(uint64_t) rtTimeGetSystemNano + * Use ktime_get_ts, this is also what clock_gettime(CLOCK_MONOTONIC,) is using. + */ + uint64_t u64; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 6, 0) ++ struct timespec64 Ts; ++#else + struct timespec Ts; ++#endif + ktime_get_ts(&Ts); + u64 = Ts.tv_sec * RT_NS_1SEC_64 + Ts.tv_nsec; + return u64;