Hello community,

here is the log from the commit of package virtualbox for openSUSE:Factory 
checked in at 2017-12-04 09:59:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virtualbox (Old)
 and      /work/SRC/openSUSE:Factory/.virtualbox.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virtualbox"

Mon Dec  4 09:59:58 2017 rev:149 rq:547420 version:5.1.30

Changes:
--------
--- /work/SRC/openSUSE:Factory/virtualbox/virtualbox.changes    2017-11-30 
12:37:58.198108497 +0100
+++ /work/SRC/openSUSE:Factory/.virtualbox.new/virtualbox.changes       
2017-12-04 10:00:01.285543572 +0100
@@ -1,0 +2,5 @@
+Sat Dec  2 03:57:55 UTC 2017 - larry.fin...@lwfinger.net
+
+- Update "fixes_for_4.15.patch" for further API changes in kernel 4.15.
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ fixes_for_4.15.patch ++++++
--- /var/tmp/diff_new_pack.VEdHZv/_old  2017-12-04 10:00:07.393321887 +0100
+++ /var/tmp/diff_new_pack.VEdHZv/_new  2017-12-04 10:00:07.397321742 +0100
@@ -1,15 +1,180 @@
+This patch file makes the necessary changes to the VirtualBox 5.1.30 sources
+to allow the kernel modules to build with kernel 4.15.
+
+The API changes are of several types:
+
+1. The timer initialization routine init_timer_pinned() no longer exists, and
+   is replaced by timer_setup().
+2. The timer callback routine calling sequence is changed as is the technique
+   for getting the timer information from the callback parameters.
+3. The calling sequence for drm_encoder_find() is changed.
+4. The calling sequence for the .get and .set members of the 
module_param_call()
+   calls have changed.
+
+This patch is released under the MIT license when appropriate, GPLv2 otherwise.
+
+Signed-off-by: Larry Finger <larry.fin...@lwfinger.net>
+
 Index: VirtualBox-5.1.30/src/VBox/Runtime/r0drv/linux/timer-r0drv-linux.c
 ===================================================================
 --- VirtualBox-5.1.30.orig/src/VBox/Runtime/r0drv/linux/timer-r0drv-linux.c
 +++ VirtualBox-5.1.30/src/VBox/Runtime/r0drv/linux/timer-r0drv-linux.c
-@@ -1584,7 +1584,9 @@ RTDECL(int) RTTimerCreateEx(PRTTIMER *pp
+@@ -715,6 +715,14 @@ static enum hrtimer_restart rtTimerLinux
+ #endif /* RTTIMER_LINUX_WITH_HRTIMER */
+ 
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++/**
++ * Timer callback for kernels 4.15 and later
++ */
++static void rtTimerLinuxStdCallback(struct timer_list *t)
++{
++    PRTTIMERLNXSUBTIMER pSubTimer = from_timer(pSubTimer, t, u.Std.LnxTimer);
++#else
+ /**
+  * Timer callback function for standard timers.
+  *
+@@ -723,6 +731,7 @@ static enum hrtimer_restart rtTimerLinux
+ static void rtTimerLinuxStdCallback(unsigned long ulUser)
+ {
+     PRTTIMERLNXSUBTIMER pSubTimer = (PRTTIMERLNXSUBTIMER)ulUser;
++#endif
+     PRTTIMER            pTimer    = pSubTimer->pParent;
+ 
+     RTTIMERLNX_LOG(("stdcallback %p\n", pTimer));
+@@ -1584,13 +1593,17 @@ RTDECL(int) RTTimerCreateEx(PRTTIMER *pp
          else
  #endif
          {
 -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
-+          __init_timer(&pTimer->aSubTimers[iCpu].u.Std.LnxTimer, 
TIMER_PINNED);
++            
timer_setup(&pTimer->aSubTimers[iCpu].u.Std.LnxTimer,rtTimerLinuxStdCallback, 
TIMER_PINNED);
 +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
              init_timer_pinned(&pTimer->aSubTimers[iCpu].u.Std.LnxTimer);
  #else
              init_timer(&pTimer->aSubTimers[iCpu].u.Std.LnxTimer);
+ #endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
+             pTimer->aSubTimers[iCpu].u.Std.LnxTimer.data        = (unsigned 
long)&pTimer->aSubTimers[iCpu];
+             pTimer->aSubTimers[iCpu].u.Std.LnxTimer.function    = 
rtTimerLinuxStdCallback;
++#endif
+             pTimer->aSubTimers[iCpu].u.Std.LnxTimer.expires     = jiffies;
+             pTimer->aSubTimers[iCpu].u.Std.u64NextTS            = 0;
+         }
+Index: VirtualBox-5.1.30/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
+===================================================================
+--- 
VirtualBox-5.1.30.orig/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
++++ VirtualBox-5.1.30/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
+@@ -958,7 +958,11 @@ EXPORT_SYMBOL(VBoxGuestIDCCall);
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0)
+ 
+ /** log and dbg_log parameter setter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamLogGrpSet(const char *pszValue, const struct 
kernel_param *pParam)
++#else
+ static int vgdrvLinuxParamLogGrpSet(const char *pszValue, struct kernel_param 
*pParam)
++#endif
+ {
+     if (g_fLoggerCreated)
+     {
+@@ -973,7 +973,11 @@ static int vgdrvLinuxParamLogGrpSet(cons
+ }
+ 
+ /** log and dbg_log parameter getter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamLogGrpGet(char *pszBuf, const struct kernel_param 
*pParam)
++#else
+ static int vgdrvLinuxParamLogGrpGet(char *pszBuf, struct kernel_param *pParam)
++#endif
+ {
+     PRTLOGGER pLogger = pParam->name[0] == 'd' ? RTLogDefaultInstance() : 
RTLogRelGetDefaultInstance();
+     *pszBuf = '\0';
+@@ -984,7 +984,11 @@ static int vgdrvLinuxParamLogGrpGet(char
+ 
+ 
+ /** log and dbg_log_flags parameter setter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamLogFlagsSet(const char *pszValue, const struct 
kernel_param *pParam)
++#else
+ static int vgdrvLinuxParamLogFlagsSet(const char *pszValue, struct 
kernel_param *pParam)
++#endif
+ {
+     if (g_fLoggerCreated)
+     {
+@@ -998,7 +998,11 @@ static int vgdrvLinuxParamLogFlagsSet(co
+ }
+ 
+ /** log and dbg_log_flags parameter getter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamLogFlagsGet(char *pszBuf, const struct kernel_param 
*pParam)
++#else
+ static int vgdrvLinuxParamLogFlagsGet(char *pszBuf, struct kernel_param 
*pParam)
++#endif
+ {
+     PRTLOGGER pLogger = pParam->name[0] == 'd' ? RTLogDefaultInstance() : 
RTLogRelGetDefaultInstance();
+     *pszBuf = '\0';
+@@ -1009,7 +1009,11 @@ static int vgdrvLinuxParamLogFlagsGet(ch
+ 
+ 
+ /** log and dbg_log_dest parameter setter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamLogDstSet(const char *pszValue, const struct 
kernel_param *pParam)
++#else
+ static int vgdrvLinuxParamLogDstSet(const char *pszValue, struct kernel_param 
*pParam)
++#endif
+ {
+     if (g_fLoggerCreated)
+     {
+@@ -1023,7 +1023,11 @@ static int vgdrvLinuxParamLogDstSet(cons
+ }
+ 
+ /** log and dbg_log_dest parameter getter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamLogDstGet(char *pszBuf, const struct kernel_param 
*pParam)
++#else
+ static int vgdrvLinuxParamLogDstGet(char *pszBuf, struct kernel_param *pParam)
++#endif
+ {
+     PRTLOGGER pLogger = pParam->name[0] == 'd' ? RTLogDefaultInstance() : 
RTLogRelGetDefaultInstance();
+     *pszBuf = '\0';
+@@ -1034,7 +1034,11 @@ static int vgdrvLinuxParamLogDstGet(char
+ 
+ 
+ /** r3_log_to_host parameter setter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamR3LogToHostSet(const char *pszValue, const struct 
kernel_param *pParam)
++#else
+ static int vgdrvLinuxParamR3LogToHostSet(const char *pszValue, struct 
kernel_param *pParam)
++#endif
+ {
+     if (    pszValue == NULL
+         || *pszValue == '\0'
+@@ -1052,7 +1052,11 @@ static int vgdrvLinuxParamR3LogToHostSet
+ }
+ 
+ /** r3_log_to_host parameter getter. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static int vgdrvLinuxParamR3LogToHostGet(char *pszBuf, const struct 
kernel_param *pParam)
++#else
+ static int vgdrvLinuxParamR3LogToHostGet(char *pszBuf, struct kernel_param 
*pParam)
++#endif
+ {
+     strcpy(pszBuf, g_DevExt.fLoggingEnabled ? "enabled" : "disabled");
+     return strlen(pszBuf);
+Index: VirtualBox-5.1.30/src/VBox/Additions/linux/drm/vbox_mode.c
+===================================================================
+--- VirtualBox-5.1.30.orig/src/VBox/Additions/linux/drm/vbox_mode.c
++++ VirtualBox-5.1.30/src/VBox/Additions/linux/drm/vbox_mode.c
+@@ -369,7 +369,12 @@ static struct drm_encoder *vbox_best_sin
+     LogFunc(("vboxvideo: %d: connector=%p\n", __LINE__, connector));
+     /* pick the encoder ids */
+     if (enc_id)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++        return drm_encoder_find(connector->dev, NULL, enc_id);
++#else
+         return drm_encoder_find(connector->dev, enc_id);
++#endif
++
+     LogFunc(("vboxvideo: %d\n", __LINE__));
+     return NULL;
+ }



Reply via email to