forked from pool/virtualbox
Accepting request 453202 from Virtualization
Fix build problems with kernel 4.10 OBS-URL: https://build.opensuse.org/request/show/453202 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/virtualbox?expand=0&rev=127
This commit is contained in:
commit
35ab6572e4
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:212ff0b27e892df670be694627a0ad968f3abbebcfa770bebc33cc976a76a9e5
|
||||
size 80300379
|
3
VirtualBox-5.1.14-patched.tar.bz2
Normal file
3
VirtualBox-5.1.14-patched.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:68f9019043e4ae409b357fc65c67dcc41b3afdfc09de4442b988f4d8dfb6e544
|
||||
size 80296668
|
37
vbox_fix_4.10_api_changes.patch
Normal file
37
vbox_fix_4.10_api_changes.patch
Normal file
@ -0,0 +1,37 @@
|
||||
|
||||
Index: VirtualBox-5.1.14/src/VBox/Additions/linux/sharedfolders/lnkops.c
|
||||
===================================================================
|
||||
--- VirtualBox-5.1.14.orig/src/VBox/Additions/linux/sharedfolders/lnkops.c
|
||||
+++ VirtualBox-5.1.14/src/VBox/Additions/linux/sharedfolders/lnkops.c
|
||||
@@ -88,6 +88,31 @@ static const char *sf_get_link(struct de
|
||||
}
|
||||
# endif /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 5, 0) */
|
||||
|
||||
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
|
||||
+/*
|
||||
+ * A helper for ->readlink(). This should be used *ONLY* for symlinks that
|
||||
+ * have ->get_link() not calling nd_jump_link(). Using (or not using) it
|
||||
+ * for any given inode is up to filesystem.
|
||||
+ */
|
||||
+static int generic_readlink(struct dentry *dentry, char __user *buffer,
|
||||
+ int buflen)
|
||||
+{
|
||||
+ DEFINE_DELAYED_CALL(done);
|
||||
+ struct inode *inode = d_inode(dentry);
|
||||
+ const char *link = inode->i_link;
|
||||
+ int res;
|
||||
+
|
||||
+ if (!link) {
|
||||
+ link = inode->i_op->get_link(dentry, inode, &done);
|
||||
+ if (IS_ERR(link))
|
||||
+ return PTR_ERR(link);
|
||||
+ }
|
||||
+ res = readlink_copy(buffer, buflen, link);
|
||||
+ do_delayed_call(&done);
|
||||
+ return res;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
struct inode_operations sf_lnk_iops =
|
||||
{
|
||||
.readlink = generic_readlink,
|
@ -1,70 +0,0 @@
|
||||
Index: VirtualBox-5.1.10/src/VBox/Additions/linux/sharedfolders/dirops.c
|
||||
===================================================================
|
||||
--- VirtualBox-5.1.10.orig/src/VBox/Additions/linux/sharedfolders/dirops.c
|
||||
+++ VirtualBox-5.1.10/src/VBox/Additions/linux/sharedfolders/dirops.c
|
||||
@@ -748,12 +748,18 @@ static int sf_rmdir(struct inode *parent
|
||||
* @param flags flags
|
||||
* @returns 0 on success, Linux error code otherwise
|
||||
*/
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
|
||||
static int sf_rename(struct inode *old_parent, struct dentry *old_dentry,
|
||||
struct inode *new_parent, struct dentry *new_dentry
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
|
||||
, unsigned flags
|
||||
#endif
|
||||
)
|
||||
+#else
|
||||
+static int sf_rename(struct inode *old_parent, struct dentry *old_dentry,
|
||||
+ struct inode *new_parent, struct dentry *new_dentry,
|
||||
+ unsigned int flags)
|
||||
+#endif
|
||||
{
|
||||
int err = 0, rc = VINF_SUCCESS;
|
||||
struct sf_glob_info *sf_g = GET_GLOB_INFO(old_parent->i_sb);
|
||||
Index: VirtualBox-5.1.10/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
===================================================================
|
||||
--- VirtualBox-5.1.10.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
+++ VirtualBox-5.1.10/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
@@ -221,7 +221,8 @@ static int vbox_bo_move(struct ttm_buffe
|
||||
struct ttm_mem_reg *new_mem)
|
||||
{
|
||||
int r;
|
||||
-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 8, 0)
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 8, 0) || \
|
||||
+ LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
|
||||
r = ttm_bo_move_memcpy(bo, evict, no_wait_gpu, new_mem);
|
||||
#elif LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
|
||||
r = ttm_bo_move_memcpy(bo, evict, interruptible, no_wait_gpu, new_mem);
|
||||
Index: VirtualBox-5.1.10/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
|
||||
===================================================================
|
||||
--- VirtualBox-5.1.10.orig/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
|
||||
+++ VirtualBox-5.1.10/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
|
||||
@@ -1045,7 +1045,27 @@ DECLHIDDEN(int) rtR0MemObjNativeLockUser
|
||||
/*
|
||||
* Get user pages.
|
||||
*/
|
||||
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
|
||||
+ if (R0Process == RTR0ProcHandleSelf())
|
||||
+ rc = get_user_pages(R3Ptr, /* Where from. */
|
||||
+ cPages, /* How many pages. */
|
||||
+ fWrite, /* Write to memory. */
|
||||
+ &pMemLnx->apPages[0], /* Page array. */
|
||||
+ papVMAs); /* vmas */
|
||||
+ /*
|
||||
+ * Actually this should not happen at the moment as call this function
|
||||
+ * only for our own process.
|
||||
+ */
|
||||
+ else
|
||||
+ rc = get_user_pages_remote(
|
||||
+ pTask, /* Task for fault accounting. */
|
||||
+ pTask->mm, /* Whose pages. */
|
||||
+ R3Ptr, /* Where from. */
|
||||
+ cPages, /* How many pages. */
|
||||
+ fWrite, /* Write to memory. */
|
||||
+ &pMemLnx->apPages[0], /* Page array. */
|
||||
+ papVMAs); /* vmas */
|
||||
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
|
||||
if (R0Process == RTR0ProcHandleSelf())
|
||||
rc = get_user_pages(R3Ptr, /* Where from. */
|
||||
cPages, /* How many pages. */
|
@ -1,3 +1,29 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 28 20:37:54 UTC 2017 - Larry.Finger@lwfinger.net
|
||||
|
||||
- Removed "vbox_fix_4.9_api_changes.patch" as changes are upstream.
|
||||
Fixed API changes for kernel 4.10 in "vbox_fix_4.10_api_changes.patch".
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 25 02:52:51 UTC 2017 - Larry.Finger@lwfinger.net
|
||||
|
||||
- The version bump to 5.1.14 also addresses boo#1020856 CVE-2017-3316 CVE-2017-3332 CVE-2017-3290 CVE-2016-5545
|
||||
|
||||
- Version bump to 5.1.14 (released 2017-01-17 by Oracle)
|
||||
|
||||
This is a maintenance release. The following items were fixed and/or added:
|
||||
|
||||
VMM: fixed emulation of certain instructions for 64-bit guests on 32-bit hosts
|
||||
VMM: properly handle certain MSRs for 64-bit guests on ancient CPUs without VT-x support for MSR bitmaps (bug #13886)
|
||||
GUI: fixed a crash with multimonitor setups under certain conditions
|
||||
GUI: allow cloning of snapshots when the VM is running
|
||||
NVMe: fixed compatibility with the Storage Performance Development Kit (SPDK, bug #16368)
|
||||
VBoxSVC: fixed a crash under rare circumstances
|
||||
VBoxManage: added a sanity check to modifymedium --resize to prevent users from resizing their hard disk from 1GB to 1PB (bug #16311)
|
||||
Windows hosts: another fix for recent Windows 10 hosts
|
||||
Linux hosts: Linux 4.10 fixes
|
||||
Linux Additions: fixed protocol error during certain operations on shared folders (bug #8463)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 14 02:14:27 UTC 2017 - Larry.Finger@lwfinger.net
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
%define _vbox_instdir %{_libexecdir}/virtualbox
|
||||
%define _udevrulesdir %{_sysconfdir}/udev/rules.d
|
||||
Name: virtualbox
|
||||
Version: 5.1.12
|
||||
Version: 5.1.14
|
||||
Release: 0
|
||||
Summary: VirtualBox is an Emulator
|
||||
License: GPL-2.0+
|
||||
@ -89,11 +89,11 @@ Patch111: vbox_prevent_wrong_SONAME.patch
|
||||
Patch112: modify_for_4_8_bo_move.patch
|
||||
# Remove all mention of _smp_mflags
|
||||
Patch113: vbox_remove_smp_mflags.patch
|
||||
# Fix build error on kernel 4.9
|
||||
Patch114: vbox_fix_4.9_api_changes.patch
|
||||
# Fix for missing include needed for server 1.19
|
||||
Patch116: Fix_for_server_1.19.patch
|
||||
#
|
||||
Patch117: vbox_fix_4.10_api_changes.patch
|
||||
#
|
||||
BuildRequires: LibVNCServer-devel
|
||||
BuildRequires: SDL-devel
|
||||
BuildRequires: acpica
|
||||
@ -328,8 +328,8 @@ This package contains icons for guest desktop files that were created on the des
|
||||
%patch111 -p1
|
||||
%patch112 -p1
|
||||
%patch113 -p1
|
||||
%patch114 -p1
|
||||
%patch116 -p1
|
||||
%patch117 -p1
|
||||
|
||||
#copy user manual
|
||||
cp %{SOURCE1} UserManual.pdf
|
||||
|
Loading…
Reference in New Issue
Block a user