diff options
author | Andrew Geissler <geissonator@yahoo.com> | 2021-01-30 00:58:13 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2021-01-30 19:33:11 +0300 |
commit | eef6386ca7c8a62f37fc84a0a5a68842183cdfb0 (patch) | |
tree | e6aff1bbab2f0f36edabc31493bcf96e34ce1d6b /meta-openembedded/meta-oe/recipes-support/vboxguestdrivers | |
parent | c60845c87403beb867c541f4271d05287f38a985 (diff) | |
download | openbmc-eef6386ca7c8a62f37fc84a0a5a68842183cdfb0.tar.xz |
meta-openembedded: subtree update:4599fea881..fd123c9bb2
Adrian (1):
networkmanager: add missing readline depends
Adrian Freihofer (2):
nftables: upgrade 0.9.7 -> 0.9.8
firewalld: upgrade 0.9.2 -> 0.9.3
Adrian Herrera (2):
cppunit: add support for native version
protobuf: apply fix for pkg-config pthread flags
Alejandro Enedino Hernandez Samaniego (2):
remmina: Update to 1.4.10
imapfilter: Upgrade 2.6.16 -> 2.7.5
Anatol Belski (1):
xmlsec1: Fix configure QA error caused by host lookup path
Andreas Müller (24):
libunique: remove
xfce4-screenshooter: replace gtk+ -> gtk+3 in DEPENDS
libxfce4ui: Fix sporadic install error
poppler: upgrade 20.12.1 -> 21.01.0
dconf: upgrade 0.36.0 -> 0.38.0
dconf-editor: upgrade 3.36.2 -> 3.38.2
amtk: upgrade 5.1.1 -> 5.2.0
evince: upgrade 3.36.7 -> 3.38.0
catfish: upgrade 1.4.13 -> 4.16.0
xfwm4: upgrade 4.16.0 -> 4.16.1
parole: upgrade 1.0.5 -> 4.16.0
garcon: upgrade 0.8.0 -> 4.16.1
xfce4-whiskermenu-plugin: upgrade 2.5.1 -> 2.5.2
thunar: upgrade 4.16.0 -> 4.16.2
jack: upgrade 1.19.16 -> 1.19.17
networkmanager: upgrade 1.22.14 -> 1.28.0
appstream-glib: upgrade 0.7.17 -> 0.7.18
vlc: upgrade 3.0.11.1 -> 3.0.12
python3-mypy-extensions: Initial add 0.4.3
python3-mypy: initial add 0.800
python3-send2trash_ initial add 1.5.0
python3-asttokens: initial add 2.0.4
python3-typed-ast: Initial add 1.4.1
packagegroup-meta-python: Add asttokens/mypy/mypy-extensions/typed-ast/send2trash
Andrew Jeffery (2):
meta-python: Add hexdump package
meta-python: Add jstyleson
Armin Kuster (3):
wireshark: Several securtiy fixes
ipset: add recipe
lua: update to 5.3.6
Clément Péron (2):
re2: Add recipe for Google RE2 library
abseil-cpp: bump to LTS 2020_09_23 Patch Release 3
Daniel Gomez (2):
zbar: Add support for mchehab/zbar
zbar: Remove support for 0.10 version
Diego Santa Cruz (1):
net-snmp: control smux via PACKAGECONFIG
Gianfranco (2):
vboxguestdrivers: upgrade 6.1.16 -> 6.1.18
vboxguestdrivers: Add patch proposed upstream to fix a build failure on i386
Gianfranco Costamagna (1):
dlt-daemon: update to new release 2.18.6
Harpritkaur Bhandari (1):
rapidjson: Upgrade SRCREV to latest
He Zhe (2):
lmbench: Fix webpage-lm and manual page typos
lmbench: lat_fifo: Fix cleanup sequence
Junjie Mao (1):
python3-xmlschema: Yocto recipes for validating against XSD 1.1
Kai Kang (4):
xfce4-panel-profiles: fix do install failure with dash
xfce4-panel-profiles: update remove-bashisms.patch for centos 7
blueman: refresh patch
mariadb: add package config zstd
Khem Raj (6):
influxdb: Fix build on mips
packagegroup-meta-oe: Add new package influxdb
packagegroup-meta-networking: Add ipset
packagegroup-meta-oe: Add re2
autoconf-2.13-native,xserver-xorg-cvt-native: Move inheriting native to the end
dfu-util-native: Adjust Inherit order
Leon Anavi (75):
python3-aiohttp: Upgrade 3.7.2 -> 3.7.3
python3-coloredlogs: Upgrade 14.0 -> 15.0
python3-jsonrpcserver: Upgrade 4.1.3 -> 4.2.0
python3-pymisp: Upgrade 2.4.133 -> 2.4.135.3
python3-parso: Upgrade 0.8.0 -> 0.8.1
python3-pillow: Upgrade 7.2.0 -> 8.1.0
python3-croniter: Upgrade 0.3.37 -> 1.0.1
python3-pychromecast: Upgrade 7.7.1 -> 7.7.2
python3-hyperlink: Upgrade 20.0.1 -> 21.0.0
python3-dnspython: Upgrade 2.0.0 -> 2.1.0
python3-prompt-toolkit: Upgrade 3.0.9 -> 3.0.10
python3-ptyprocess: Upgrade 0.6.0 -> 0.7.0
python3-certifi: Upgrade 2020.11.8 -> 2020.12.5
python3-jedi: Upgrade 0.17.2 -> 0.18.0
python3-mock: Upgrade 4.0.2 -> 4.0.3
python3-pyscaffold: Upgrade 3.2.3 -> 3.3
python3-cffi: Upgrade 1.14.3 -> 1.14.4
python3-rsa: Upgrade 4.6 -> 4.7
python3-pyjwt: Upgrade 1.7.1 -> 2.0.0
python3-isort: Upgrade 5.6.4 -> 5.7.0
python3-lz4: Upgrade 3.1.0 -> 3.1.1
python3-msgpack: Upgrade 1.0.0 -> 1.0.2
python3-pyopenssl: Upgrade 19.1.0 -> 20.0.1
python3-ecdsa: Upgrade 0.16.0 -> 0.16.1
python3-regex: Upgrade 2020.10.28 -> 2020.11.13
python3-cryptography: Upgrade 3.2 -> 3.3.1
python3-cryptography-vectors: Upgrade 3.2 -> 3.3.1
python3-wheel: Upgrade 0.35.1 -> 0.36.2
python3-pyzmq: Upgrade 19.0.2 -> 20.0.0
python3-greenlet: Upgrade 0.4.17 -> 1.0.0
python3-parse: Upgrade 1.18.0 -> 1.19.0
python3-colorlog: Upgrade 4.6.2 -> 4.7.2
python3-pyephem: Upgrade 3.7.7.0 -> 3.7.7.1
python3-pyperf: Upgrade 2.0.0 -> 2.1.0
python3-cheetah: Upgrade 3.2.5 -> 3.2.6
python3-pyscaffold: Upgrade 3.3 -> 3.3.1
python3-lxml: Upgrade 4.6.1 -> 4.6.2
python3-openpyxl: Upgrade 3.0.5 -> 3.0.6
python3-pymysql: Upgrade 0.10.1 -> 1.0.2
python3-dbus-next: Upgrade 0.1.4 -> 0.2.2
python3-yappi: Upgrade 1.3.0 -> 1.3.2
python3-pyyaml: Upgrade 5.3.1 -> 5.4
python3-google-api-python-client: Upgrade 1.12.5 -> 1.12.8
python3-evdev: Upgrade 1.3.0 -> 1.4.0
python3-pyusb: Upgrade 1.1.0 -> 1.1.1
python3-pyserial: Upgrade 3.4 -> 3.5
python3-pandas: Upgrade 1.2.0 -> 1.2.1
python3-alembic: Upgrade 1.4.3 -> 1.5.1
python3-coverage: Upgrade 5.3 -> 5.3.1
python3-lz4: Upgrade 3.1.1 -> 3.1.3
python3-bitarray: Upgrade 1.6.1 -> 1.6.3
python3-pykwalify: Upgrade 1.7.0 -> 1.8.0
python3-croniter: Upgrade 1.0.1 -> 1.0.2
python3-ujson: Upgrade 4.0.1 -> 4.0.2
python3-smbus2: Upgrade 0.4.0 -> 0.4.1
python3-pyzmq: Upgrade 20.0.0 -> 21.0.1
python3-alembic: Upgrade 1.5.1 -> 1.5.2
python3-prompt-toolkit: Upgrade 3.0.10 -> 3.0.11
python3-pyjwt: Upgrade 2.0.0 -> 2.0.1
python3-pyyaml: Upgrade 5.4 -> 5.4.1
python3-natsort: Upgrade 7.1.0 -> 7.1.1
python3-pymisp: Upgrade 2.4.135.3 -> 2.4.137.1
python3-socketio: Upgrade 4.6.0 -> 5.0.4
python3-lazy-object-proxy: Upgrade 1.5.1 -> 1.5.2
python3-custom-inherit: Upgrade 2.3.0 -> 2.3.1
python3-cachetools: Upgrade 4.2.0 -> 4.2.1
python3-coverage: Upgrade 5.3.1 -> 5.4
python3-diskcache: Upgrade 5.1.0 -> 5.2.1
python3-aenum: Upgrade 2.2.6 -> 3.0.0
python3-xmlschema: Upgrade 1.4.1 -> 1.4.2
python3-intervals: Upgrade 1.10.0 -> 1.10.0.post1
python3-portion: Add recipe
python3-pako: Upgrade 0.2.3 -> 0.3.0
python3-typed-ast: Upgrade 1.4.1 -> 1.4.2
python3-pyzmq: Upgrade 21.0.1 -> 21.0.2
Luca Boccassi (4):
dbus-broker: enable SO_PEERSEC usage by default
fsverity: update to 1.3
fsverity: fix MinGW build
dbus-broker: update to v26
Mario Schuknecht (1):
dnsmasq: Fix systemd service
Mikko Rapeli (3):
fuse: set CVE_PRODUCT to "fuse_project:fuse"
flatbuffers: whitelist CVE-2020-35864
giflib: apply patch for CVE-2019-15133 and set CVE_PRODUCT
Mingli Yu (2):
mcelog: fix the pfa test hang
mariadb: upgrade to 10.5.8
Nicolas Jeker (1):
networkmanager: Add Wireless Extensions to PACKAGECONFIG[wifi]
Oleksiy Obitotskyy (1):
libsmi: set awk as target path
Robert Joslyn (1):
htop: Update to 3.0.4
Ross Burton (1):
libmicrohttpd: allow native/nativesdk builds
S. Lockwood-Childs (1):
sip3: simplify recipe
Shlomi Vaknin (1):
python3-sh: remove python3-tests from RDEPENDS
Stefano Babic (1):
libconfig: split package for C++
Søren Andersen (1):
zram: fix sourcing of zram parameters
Thomas Perrot (1):
influxdb: add new recipe
Trevor Gamblin (2):
packagegroup-meta-python: sort package names, add notes
packagegroup-meta-python: add ptest packages to ptest group
Wang Mingyu (1):
dovecot: upgrade 2.2.36.4 -> 2.3.13
Yi Zhao (1):
nss: upgrade 3.60 -> 3.60.1
Zang Ruochen (9):
c-periphery: upgrade 2.3.0 -> 2.3.1
htop: upgrade 3.0.4 -> 3.0.5
hwdata: upgrade 0.342 -> 0.343
spitools: upgrade 0.8.6 -> 0.8.7
librole-tiny-perl: upgrade 2.001004 -> 2.002003
python3-smbus: upgrade 4.1 -> 4.2
python3-snappy: upgrade 0.5.4 -> 0.6.0
python3-zopeinterface: upgrade 5.1.0 -> 5.2.0
python3-nmap: upgrade 1.4.8 -> 1.5.0
Zheng Ruoqin (7):
cifs-utils: upgrade 6.11 -> 6.12
firewalld: upgrade 0.9.1 -> 0.9.2
igmpproxy: upgrade 0.2.1 -> 0.3
mdns: upgrade 1096.40.7 -> 1310.40.42
opensc: Fix the wrong version number.
python3-djangorestframework: upgrade 3.12.1 -> 3.12.2
python3-ipy: upgrade 1.00 -> 1.01
changqing.li@windriver.com (1):
celt051: update SRC_URI
zangrc (6):
libnftnl: upgrade 1.1.8 -> 1.1.9
czmq: upgrade 4.2.0 -> 4.2.1
dialog: upgrade 1.3-20201126 -> 1.3-20210117
modemanager: upgrade 1.14.8 -> 1.14.10
monit: upgrade 5.27.1 -> 5.27.2
python3-networkmanager: upgrade 2.1 -> 2.2
zhengruoqin (3):
openldap: upgrade 2.4.56 -> 2.4.57
satyr: upgrade 0.35 -> 0.36
zeromq: upgrade 4.3.3 -> 4.3.4
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I2469d162f1db8072fec106f629872618082bbeac
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-support/vboxguestdrivers')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Additions-linux-drm-Adjustment-for-Linux-5.10.patch | 321 | ||||
-rw-r--r-- | meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Runtime-memobj-r0drv-linux.c-Changes-to-support-the-.patch | 119 | ||||
-rw-r--r-- | meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-linser-vboxsf-Adjustment-for-linux-5.10-TASK_SIZE_MA.patch | 46 | ||||
-rw-r--r-- | meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/kernel-5.10.patch | 23 | ||||
-rw-r--r-- | meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb (renamed from meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.16.bb) | 8 |
5 files changed, 26 insertions, 491 deletions
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Additions-linux-drm-Adjustment-for-Linux-5.10.patch b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Additions-linux-drm-Adjustment-for-Linux-5.10.patch deleted file mode 100644 index a444901f8..000000000 --- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Additions-linux-drm-Adjustment-for-Linux-5.10.patch +++ /dev/null @@ -1,321 +0,0 @@ -From b6c765d693a0833b94cb2e91b32842570c3458d2 Mon Sep 17 00:00:00 2001 -From: vboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f> -Date: Tue, 15 Dec 2020 22:29:56 +0000 -Subject: [PATCH] Additions/linux/drm: Adjustment for Linux 5.10. - -Upstream-Status: Backport - -git-svn-id: http://www.virtualbox.org/svn/vbox@87092 cfe28804-0f27-0410-a406-dd0f0b0b656f - -Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> - ---- - src/VBox/Additions/linux/drm/vbox_drv.h | 10 +- - src/VBox/Additions/linux/drm/vbox_fb.c | 2 +- - .../src/VBox/Additions/linux/drm/vbox_mode.c | 2 +- - src/VBox/Additions/linux/drm/vbox_ttm.c | 99 +++++++++++++++++-- - 4 files changed, 99 insertions(+), 14 deletions(-) - -diff --git a/src/VBox/Additions/linux/drm/vbox_drv.h b/src/VBox/Additions/linux/drm/vbox_drv.h -index 8c85371749..7937f2f2d2 100644 ---- a/src/VBox/Additions/linux/drm/vbox_drv.h -+++ b/src/VBox/Additions/linux/drm/vbox_drv.h -@@ -175,6 +175,9 @@ - #include <drm/ttm/ttm_placement.h> - #include <drm/ttm/ttm_memory.h> - #include <drm/ttm/ttm_module.h> -+#if RTLNX_VER_MIN(5,10,0) -+# include <drm/ttm/ttm_resource.h> -+#endif - - #include "vboxvideo_guest.h" - #include "vboxvideo_vbe.h" -@@ -444,7 +447,10 @@ int vbox_bo_create(struct drm_device *dev, int size, int align, - int vbox_gem_create(struct drm_device *dev, - u32 size, bool iskernel, struct drm_gem_object **obj); - --int vbox_bo_pin(struct vbox_bo *bo, u32 pl_flag, u64 *gpu_addr); -+#define VBOX_MEM_TYPE_VRAM 0x1 -+#define VBOX_MEM_TYPE_SYSTEM 0x2 -+ -+int vbox_bo_pin(struct vbox_bo *bo, u32 mem_type, u64 *gpu_addr); - int vbox_bo_unpin(struct vbox_bo *bo); - - static inline int vbox_bo_reserve(struct vbox_bo *bo, bool no_wait) -@@ -469,7 +475,7 @@ static inline void vbox_bo_unreserve(struct vbox_bo *bo) - ttm_bo_unreserve(&bo->bo); - } - --void vbox_ttm_placement(struct vbox_bo *bo, int domain); -+void vbox_ttm_placement(struct vbox_bo *bo, u32 mem_type); - int vbox_bo_push_sysram(struct vbox_bo *bo); - int vbox_mmap(struct file *filp, struct vm_area_struct *vma); - -diff --git a/src/VBox/Additions/linux/drm/vbox_fb.c b/src/VBox/Additions/linux/drm/vbox_fb.c -index adead98d3d..7182d9da1a 100644 ---- a/src/VBox/Additions/linux/drm/vbox_fb.c -+++ b/src/VBox/Additions/linux/drm/vbox_fb.c -@@ -295,7 +295,7 @@ static int vboxfb_create(struct drm_fb_helper *helper, - if (ret) - return ret; - -- ret = vbox_bo_pin(bo, TTM_PL_FLAG_VRAM, NULL); -+ ret = vbox_bo_pin(bo, VBOX_MEM_TYPE_VRAM, NULL); - if (ret) { - vbox_bo_unreserve(bo); - return ret; -diff --git a/src/VBox/Additions/linux/drm/vbox_mode.c b/src/VBox/Additions/linux/drm/vbox_mode.c -index ce7d135cb6..5557db5ef8 100644 ---- a/src/VBox/Additions/linux/drm/vbox_mode.c -+++ b/src/VBox/Additions/linux/drm/vbox_mode.c -@@ -227,7 +227,7 @@ static int vbox_crtc_set_base(struct drm_crtc *crtc, - if (ret) - return ret; - -- ret = vbox_bo_pin(bo, TTM_PL_FLAG_VRAM, &gpu_addr); -+ ret = vbox_bo_pin(bo, VBOX_MEM_TYPE_VRAM, &gpu_addr); - vbox_bo_unreserve(bo); - if (ret) - return ret; -diff --git a/src/VBox/Additions/linux/drm/vbox_ttm.c b/src/VBox/Additions/linux/drm/vbox_ttm.c -index bf87aabc05..5eac926a42 100644 ---- a/src/VBox/Additions/linux/drm/vbox_ttm.c -+++ b/src/VBox/Additions/linux/drm/vbox_ttm.c -@@ -41,6 +41,7 @@ - #define PLACEMENT_FLAGS(placement) ((placement).flags) - #endif - -+ - static inline struct vbox_private *vbox_bdev(struct ttm_bo_device *bd) - { - return container_of(bd, struct vbox_private, ttm.bdev); -@@ -125,6 +126,7 @@ static bool vbox_ttm_bo_is_vbox_bo(struct ttm_buffer_object *bo) - return false; - } - -+#if RTLNX_VER_MAX(5,10,0) - static int - vbox_bo_init_mem_type(struct ttm_bo_device *bdev, u32 type, - struct ttm_mem_type_manager *man) -@@ -148,6 +150,7 @@ vbox_bo_init_mem_type(struct ttm_bo_device *bdev, u32 type, - - return 0; - } -+#endif - - static void - vbox_bo_evict_flags(struct ttm_buffer_object *bo, struct ttm_placement *pl) -@@ -157,7 +160,7 @@ vbox_bo_evict_flags(struct ttm_buffer_object *bo, struct ttm_placement *pl) - if (!vbox_ttm_bo_is_vbox_bo(bo)) - return; - -- vbox_ttm_placement(vboxbo, TTM_PL_FLAG_SYSTEM); -+ vbox_ttm_placement(vboxbo, VBOX_MEM_TYPE_SYSTEM); - *pl = vboxbo->placement; - } - -@@ -167,11 +170,12 @@ static int vbox_bo_verify_access(struct ttm_buffer_object *bo, - return 0; - } - -+#if RTLNX_VER_MAX(5,10,0) - static int vbox_ttm_io_mem_reserve(struct ttm_bo_device *bdev, - struct ttm_mem_reg *mem) - { -- struct ttm_mem_type_manager *man = &bdev->man[mem->mem_type]; - struct vbox_private *vbox = vbox_bdev(bdev); -+ struct ttm_mem_type_manager *man = &bdev->man[mem->mem_type]; - - mem->bus.addr = NULL; - mem->bus.offset = 0; -@@ -194,12 +198,53 @@ static int vbox_ttm_io_mem_reserve(struct ttm_bo_device *bdev, - } - return 0; - } -+#else -+static int vbox_ttm_io_mem_reserve(struct ttm_bo_device *bdev, -+ struct ttm_resource *mem) -+{ -+ struct vbox_private *vbox = vbox_bdev(bdev); -+ mem->bus.addr = NULL; -+ mem->bus.offset = 0; -+ mem->size = mem->num_pages << PAGE_SHIFT; -+ mem->start = 0; -+ mem->bus.is_iomem = false; -+ switch (mem->mem_type) { -+ case TTM_PL_SYSTEM: -+ /* system memory */ -+ return 0; -+ case TTM_PL_VRAM: -+ mem->bus.offset = mem->start << PAGE_SHIFT; -+ mem->start = pci_resource_start(vbox->dev->pdev, 0); -+ mem->bus.is_iomem = true; -+ break; -+ default: -+ return -EINVAL; -+ } -+ return 0; -+} -+#endif - -+ -+ -+#if RTLNX_VER_MIN(5,10,0) -+static void vbox_ttm_io_mem_free(struct ttm_bo_device *bdev, -+ struct ttm_resource *mem) -+{ -+} -+#else - static void vbox_ttm_io_mem_free(struct ttm_bo_device *bdev, - struct ttm_mem_reg *mem) - { - } -+#endif - -+#if RTLNX_VER_MIN(5,10,0) -+static void vbox_ttm_tt_destroy(struct ttm_bo_device *bdev, struct ttm_tt *tt) -+{ -+ ttm_tt_fini(tt); -+ kfree(tt); -+} -+#else - static void vbox_ttm_backend_destroy(struct ttm_tt *tt) - { - ttm_tt_fini(tt); -@@ -209,6 +254,7 @@ static void vbox_ttm_backend_destroy(struct ttm_tt *tt) - static struct ttm_backend_func vbox_tt_backend_func = { - .destroy = &vbox_ttm_backend_destroy, - }; -+#endif - - #if RTLNX_VER_MAX(4,17,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) - static struct ttm_tt *vbox_ttm_tt_create(struct ttm_bo_device *bdev, -@@ -226,7 +272,9 @@ static struct ttm_tt *vbox_ttm_tt_create(struct ttm_buffer_object *bo, - if (!tt) - return NULL; - -+#if RTLNX_VER_MAX(5,10,0) - tt->func = &vbox_tt_backend_func; -+#endif - #if RTLNX_VER_MAX(4,17,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) - if (ttm_tt_init(tt, bdev, size, page_flags, dummy_read_page)) { - #else -@@ -261,11 +309,16 @@ static void vbox_ttm_tt_unpopulate(struct ttm_tt *ttm) - - static struct ttm_bo_driver vbox_bo_driver = { - .ttm_tt_create = vbox_ttm_tt_create, -+#if RTLNX_VER_MIN(5,10,0) -+ .ttm_tt_destroy = vbox_ttm_tt_destroy, -+#endif - #if RTLNX_VER_MAX(4,17,0) - .ttm_tt_populate = vbox_ttm_tt_populate, - .ttm_tt_unpopulate = vbox_ttm_tt_unpopulate, - #endif -+#if RTLNX_VER_MAX(5,10,0) - .init_mem_type = vbox_bo_init_mem_type, -+#endif - #if RTLNX_VER_MIN(4,10,0) || RTLNX_RHEL_MAJ_PREREQ(7,4) - .eviction_valuable = ttm_bo_eviction_valuable, - #endif -@@ -318,8 +371,13 @@ int vbox_mm_init(struct vbox_private *vbox) - #endif - } - -+#if RTLNX_VER_MIN(5,10,0) -+ ret = ttm_range_man_init(bdev, TTM_PL_VRAM, false, -+ vbox->available_vram_size >> PAGE_SHIFT); -+#else - ret = ttm_bo_init_mm(bdev, TTM_PL_VRAM, - vbox->available_vram_size >> PAGE_SHIFT); -+#endif - if (ret) { - DRM_ERROR("Failed ttm VRAM init: %d\n", ret); - goto err_device_release; -@@ -359,7 +417,7 @@ void vbox_mm_fini(struct vbox_private *vbox) - #endif - } - --void vbox_ttm_placement(struct vbox_bo *bo, int domain) -+void vbox_ttm_placement(struct vbox_bo *bo, u32 mem_type) - { - u32 c = 0; - #if RTLNX_VER_MAX(3,18,0) && !RTLNX_RHEL_MAJ_PREREQ(7,2) -@@ -372,15 +430,36 @@ void vbox_ttm_placement(struct vbox_bo *bo, int domain) - bo->placement.placement = bo->placements; - bo->placement.busy_placement = bo->placements; - -- if (domain & TTM_PL_FLAG_VRAM) -+ if (mem_type & VBOX_MEM_TYPE_VRAM) { -+#if RTLNX_VER_MIN(5,10,0) -+ bo->placements[c].mem_type = TTM_PL_VRAM; -+ PLACEMENT_FLAGS(bo->placements[c++]) = -+ TTM_PL_FLAG_WC | TTM_PL_FLAG_UNCACHED; -+#else - PLACEMENT_FLAGS(bo->placements[c++]) = - TTM_PL_FLAG_WC | TTM_PL_FLAG_UNCACHED | TTM_PL_FLAG_VRAM; -- if (domain & TTM_PL_FLAG_SYSTEM) -+#endif -+ } -+ if (mem_type & VBOX_MEM_TYPE_SYSTEM) { -+#if RTLNX_VER_MIN(5,10,0) -+ bo->placements[c].mem_type = TTM_PL_SYSTEM; -+ PLACEMENT_FLAGS(bo->placements[c++]) = -+ TTM_PL_MASK_CACHING; -+#else - PLACEMENT_FLAGS(bo->placements[c++]) = - TTM_PL_MASK_CACHING | TTM_PL_FLAG_SYSTEM; -- if (!c) -+#endif -+ } -+ if (!c) { -+#if RTLNX_VER_MIN(5,10,0) -+ bo->placements[c].mem_type = TTM_PL_SYSTEM; -+ PLACEMENT_FLAGS(bo->placements[c++]) = -+ TTM_PL_MASK_CACHING; -+#else - PLACEMENT_FLAGS(bo->placements[c++]) = - TTM_PL_MASK_CACHING | TTM_PL_FLAG_SYSTEM; -+#endif -+ } - - bo->placement.num_placement = c; - bo->placement.num_busy_placement = c; -@@ -414,7 +493,7 @@ int vbox_bo_create(struct drm_device *dev, int size, int align, - vboxbo->bo.bdev->dev_mapping = dev->dev_mapping; - #endif - -- vbox_ttm_placement(vboxbo, TTM_PL_FLAG_VRAM | TTM_PL_FLAG_SYSTEM); -+ vbox_ttm_placement(vboxbo, VBOX_MEM_TYPE_VRAM | VBOX_MEM_TYPE_SYSTEM); - - acc_size = ttm_bo_dma_acc_size(&vbox->ttm.bdev, size, - sizeof(struct vbox_bo)); -@@ -452,7 +531,7 @@ static inline u64 vbox_bo_gpu_offset(struct vbox_bo *bo) - #endif - } - --int vbox_bo_pin(struct vbox_bo *bo, u32 pl_flag, u64 *gpu_addr) -+int vbox_bo_pin(struct vbox_bo *bo, u32 mem_type, u64 *gpu_addr) - { - #if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5) - struct ttm_operation_ctx ctx = { false, false }; -@@ -467,7 +546,7 @@ int vbox_bo_pin(struct vbox_bo *bo, u32 pl_flag, u64 *gpu_addr) - return 0; - } - -- vbox_ttm_placement(bo, pl_flag); -+ vbox_ttm_placement(bo, mem_type); - - for (i = 0; i < bo->placement.num_placement; i++) - PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT; -@@ -540,7 +619,7 @@ int vbox_bo_push_sysram(struct vbox_bo *bo) - if (bo->kmap.virtual) - ttm_bo_kunmap(&bo->kmap); - -- vbox_ttm_placement(bo, TTM_PL_FLAG_SYSTEM); -+ vbox_ttm_placement(bo, VBOX_MEM_TYPE_SYSTEM); - - for (i = 0; i < bo->placement.num_placement; i++) - PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT; --- -2.19.1 - diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Runtime-memobj-r0drv-linux.c-Changes-to-support-the-.patch b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Runtime-memobj-r0drv-linux.c-Changes-to-support-the-.patch deleted file mode 100644 index db27cb883..000000000 --- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-Runtime-memobj-r0drv-linux.c-Changes-to-support-the-.patch +++ /dev/null @@ -1,119 +0,0 @@ -From 2a6e3cf63f58e289802a11faad5fb495e2d04e97 Mon Sep 17 00:00:00 2001 -From: vboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f> -Date: Wed, 9 Dec 2020 18:59:04 +0000 -Subject: [PATCH] Runtime/memobj-r0drv-linux.c: Changes to support the upcoming - 5.10 kernel, bugref:9879 - -Upstream-Status: Backport - -git-svn-id: http://www.virtualbox.org/svn/vbox@87074 cfe28804-0f27-0410-a406-dd0f0b0b656f - -Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> ---- - .../Runtime/r0drv/linux/memobj-r0drv-linux.c | 68 ++++++++++++++++++- - 1 file changed, 67 insertions(+), 1 deletion(-) - ---- a/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c -+++ b/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c -@@ -56,9 +56,19 @@ - * Whether we use alloc_vm_area (3.2+) for executable memory. - * This is a must for 5.8+, but we enable it all the way back to 3.2.x for - * better W^R compliance (fExecutable flag). */ --#if RTLNX_VER_MIN(3,2,0) || defined(DOXYGEN_RUNNING) -+#if RTLNX_VER_RANGE(3,2,0, 5,10,0) || defined(DOXYGEN_RUNNING) - # define IPRT_USE_ALLOC_VM_AREA_FOR_EXEC - #endif -+/** @def IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC -+ * alloc_vm_area was removed with 5.10 so we have to resort to a different way -+ * to allocate executable memory. -+ * It would be possible to remove IPRT_USE_ALLOC_VM_AREA_FOR_EXEC and use -+ * this path execlusively for 3.2+ but no time to test it really works on every -+ * supported kernel, so better play safe for now. -+ */ -+#if RTLNX_VER_MIN(5,10,0) || defined(DOXYGEN_RUNNING) -+# define IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC -+#endif - - /* - * 2.6.29+ kernels don't work with remap_pfn_range() anymore because -@@ -502,6 +512,46 @@ static void rtR0MemObjLinuxFreePages(PRT - } - - -+#ifdef IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC -+/** -+ * User data passed to the apply_to_page_range() callback. -+ */ -+typedef struct LNXAPPLYPGRANGE -+{ -+ /** Pointer to the memory object. */ -+ PRTR0MEMOBJLNX pMemLnx; -+ /** The page protection flags to apply. */ -+ pgprot_t fPg; -+} LNXAPPLYPGRANGE; -+/** Pointer to the user data. */ -+typedef LNXAPPLYPGRANGE *PLNXAPPLYPGRANGE; -+/** Pointer to the const user data. */ -+typedef const LNXAPPLYPGRANGE *PCLNXAPPLYPGRANGE; -+ -+/** -+ * Callback called in apply_to_page_range(). -+ * -+ * @returns Linux status code. -+ * @param pPte Pointer to the page table entry for the given address. -+ * @param uAddr The address to apply the new protection to. -+ * @param pvUser The opaque user data. -+ */ -+#ifdef __i386__ -+static int rtR0MemObjLinuxApplyPageRange(pte_t *pPte, unsigned long uAddr, void *pvUser) -+#else -+static DECLCALLBACK(int) rtR0MemObjLinuxApplyPageRange(pte_t *pPte, unsigned long uAddr, void *pvUser) -+#endif -+{ -+ PCLNXAPPLYPGRANGE pArgs = (PCLNXAPPLYPGRANGE)pvUser; -+ PRTR0MEMOBJLNX pMemLnx = pArgs->pMemLnx; -+ size_t idxPg = (uAddr - (unsigned long)pMemLnx->Core.pv) >> PAGE_SHIFT; -+ -+ set_pte(pPte, mk_pte(pMemLnx->apPages[idxPg], pArgs->fPg)); -+ return 0; -+} -+#endif -+ -+ - /** - * Maps the allocation into ring-0. - * -@@ -584,6 +634,11 @@ static int rtR0MemObjLinuxVMap(PRTR0MEMO - else - # endif - { -+# if defined(IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC) -+ if (fExecutable) -+ pgprot_val(fPg) |= _PAGE_NX; /* Uses RTR0MemObjProtect to clear NX when memory ready, W^X fashion. */ -+# endif -+ - # ifdef VM_MAP - pMemLnx->Core.pv = vmap(&pMemLnx->apPages[0], pMemLnx->cPages, VM_MAP, fPg); - # else -@@ -1851,6 +1906,21 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect( - preempt_enable(); - return VINF_SUCCESS; - } -+# elif defined(IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC) -+ PRTR0MEMOBJLNX pMemLnx = (PRTR0MEMOBJLNX)pMem; -+ if ( pMemLnx->fExecutable -+ && pMemLnx->fMappedToRing0) -+ { -+ LNXAPPLYPGRANGE Args; -+ Args.pMemLnx = pMemLnx; -+ Args.fPg = rtR0MemObjLinuxConvertProt(fProt, true /*fKernel*/); -+ int rcLnx = apply_to_page_range(current->active_mm, (unsigned long)pMemLnx->Core.pv + offSub, cbSub, -+ rtR0MemObjLinuxApplyPageRange, (void *)&Args); -+ if (rcLnx) -+ return VERR_NOT_SUPPORTED; -+ -+ return VINF_SUCCESS; -+ } - # endif - - NOREF(pMem); diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-linser-vboxsf-Adjustment-for-linux-5.10-TASK_SIZE_MA.patch b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-linser-vboxsf-Adjustment-for-linux-5.10-TASK_SIZE_MA.patch deleted file mode 100644 index 3cfe2e917..000000000 --- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-linser-vboxsf-Adjustment-for-linux-5.10-TASK_SIZE_MA.patch +++ /dev/null @@ -1,46 +0,0 @@ -From a276f8bc5e4515f7ea51e2c56e0e634a723ca104 Mon Sep 17 00:00:00 2001 -From: vboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f> -Date: Tue, 8 Dec 2020 13:52:53 +0000 -Subject: [PATCH] linser/vboxsf: Adjustment for linux 5.10 - TASK_SIZE_MAX - replaces USER_DS.seg. bugref:9879 - -Upstream-Status: Backport - -git-svn-id: http://www.virtualbox.org/svn/vbox@87053 cfe28804-0f27-0410-a406-dd0f0b0b656f - -Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> ---- - src/VBox/Additions/linux/sharedfolders/regops.c | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/src/VBox/Additions/linux/sharedfolders/regops.c b/src/VBox/Additions/linux/sharedfolders/regops.c -index e1fad3d820..401fd69930 100644 ---- a/src/VBox/Additions/linux/sharedfolders/regops.c -+++ b/src/VBox/Additions/linux/sharedfolders/regops.c -@@ -147,7 +147,11 @@ static int vbsf_iov_iter_detect_type(struct iovec const *paIov, size_t cSegs) - while (cSegs-- > 0) { - if (paIov->iov_len > 0) { - if (access_ok(VERIFY_READ, paIov->iov_base, paIov->iov_len)) -+#if RTLNX_VER_MIN(5,10,0) -+ return (uintptr_t)paIov->iov_base >= TASK_SIZE_MAX ? ITER_KVEC : 0; -+#else - return (uintptr_t)paIov->iov_base >= USER_DS.seg ? ITER_KVEC : 0; -+#endif - AssertMsgFailed(("%p LB %#zx\n", paIov->iov_base, paIov->iov_len)); - break; - } -@@ -1401,7 +1405,10 @@ static int vbsf_lock_user_pages_failed_check_kernel(uintptr_t uPtrFrom, size_t c - /* - * Check that this is valid user memory that is actually in the kernel range. - */ --#if RTLNX_VER_MIN(5,0,0) || RTLNX_RHEL_MIN(8,1) -+#if RTLNX_VER_MIN(5,10,0) -+ if ( access_ok((void *)uPtrFrom, cPages << PAGE_SHIFT) -+ && uPtrFrom >= TASK_SIZE_MAX) -+#elif RTLNX_VER_MIN(5,0,0) || RTLNX_RHEL_MIN(8,1) - if ( access_ok((void *)uPtrFrom, cPages << PAGE_SHIFT) - && uPtrFrom >= USER_DS.seg) - #else --- -2.19.1 - diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/kernel-5.10.patch b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/kernel-5.10.patch new file mode 100644 index 000000000..a6b0a0454 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/kernel-5.10.patch @@ -0,0 +1,23 @@ +Origin: https://www.mail-archive.com/pld-cvs-commit@lists.pld-linux.org/msg461494.html +From 80bfab5ec8575703ef26b442a3af2d030793ebde Mon Sep 17 00:00:00 2001 +From: =?utf8?q?Jan=20R=C4=99korajski?= <baggins@pld-linux.org> +Date: Thu, 24 Dec 2020 23:03:55 +0100 +Subject: [PATCH] - DECLCALLBACK generates incorrect code on ix86, remove it + +--- + kernel-5.10.patch | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/kernel-5.10.patch b/kernel-5.10.patch +index b28d6e0..729235d 100644 +--- a/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c ++++ b/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c +@@ -536,7 +536,7 @@ typedef const LNXAPPLYPGRANGE *PCLNXAPPLYPGRANGE; + * @param uAddr The address to apply the new protection to. + * @param pvUser The opaque user data. + */ +-static DECLCALLBACK(int) rtR0MemObjLinuxApplyPageRange(pte_t *pPte, unsigned long uAddr, void *pvUser) ++static int rtR0MemObjLinuxApplyPageRange(pte_t *pPte, unsigned long uAddr, void *pvUser) + { + PCLNXAPPLYPGRANGE pArgs = (PCLNXAPPLYPGRANGE)pvUser; + PRTR0MEMOBJLNX pMemLnx = pArgs->pMemLnx; diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.16.bb b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb index ff639c09f..d620e9893 100644 --- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.16.bb +++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb @@ -13,12 +13,10 @@ VBOX_NAME = "VirtualBox-${PV}" SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \ file://Makefile.utils \ - file://0001-Additions-linux-drm-Adjustment-for-Linux-5.10.patch \ - file://0001-Runtime-memobj-r0drv-linux.c-Changes-to-support-the-.patch \ - file://0001-linser-vboxsf-Adjustment-for-linux-5.10-TASK_SIZE_MA.patch \ + file://kernel-5.10.patch \ " -SRC_URI[md5sum] = "a12a647f6c114f2cb1571089b36841fe" -SRC_URI[sha256sum] = "49c1990da16d8a3d5bda8cdb961ec8195a901e67e4c79aea44c1521a5fc2f9f1" +SRC_URI[md5sum] = "c61001386eb3822ab8f06d688a82e84b" +SRC_URI[sha256sum] = "108d42b9b391b7a332a33df1662cf7b0e9d9a80f3079d16288d8b9487f427d40" S ?= "${WORKDIR}/vbox_module" S_task-patch = "${WORKDIR}/${VBOX_NAME}" |