All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/8] virt: vbox: Fix VBGL_IOCTL_VMMDEV_REQUEST_BIG and _LOG req numbers to match upstream
@ 2020-05-20 19:54 Hans de Goede
  2020-05-20 19:54 ` [PATCH 2/8] virt: vbox: Fix guest capabilities mask check Hans de Goede
                   ` (7 more replies)
  0 siblings, 8 replies; 13+ messages in thread
From: Hans de Goede @ 2020-05-20 19:54 UTC (permalink / raw)
  To: Arnd Bergmann, Greg Kroah-Hartman; +Cc: Hans de Goede, linux-kernel, stable

Until this commit the mainline kernel version (this version) of the
vboxguest module contained a bug where it defined
VBGL_IOCTL_VMMDEV_REQUEST_BIG and VBGL_IOCTL_LOG using
_IOC(_IOC_READ | _IOC_WRITE, 'V', ...) instead of
_IO(V, ...) as the out of tree VirtualBox upstream version does.

Since the VirtualBox userspace bits are always built against VirtualBox
upstream's headers, this means that so far the mainline kernel version
of the vboxguest module has been failing these 2 ioctls with -ENOTTY.
I guess that VBGL_IOCTL_VMMDEV_REQUEST_BIG is never used causing us to
not hit that one and sofar the vboxguest driver has failed to actually
log any log messages passed it through VBGL_IOCTL_LOG.

This commit changes the VBGL_IOCTL_VMMDEV_REQUEST_BIG and VBGL_IOCTL_LOG
defines to match the out of tree VirtualBox upstream vboxguest version,
while keeping compatibility with the old wrong request defines so as
to not break the kernel ABI in case someone has been using the old
request defines.

Fixes: f6ddd094f579 ("virt: Add vboxguest driver for Virtual Box Guest integration UAPI")
Cc: stable@vger.kernel.org
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/virt/vboxguest/vboxguest_core.c  |  4 +++-
 drivers/virt/vboxguest/vboxguest_core.h  | 15 +++++++++++++++
 drivers/virt/vboxguest/vboxguest_linux.c |  3 ++-
 include/uapi/linux/vboxguest.h           |  4 ++--
 4 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/drivers/virt/vboxguest/vboxguest_core.c b/drivers/virt/vboxguest/vboxguest_core.c
index b690a8a4bf9e..8fab04e76c14 100644
--- a/drivers/virt/vboxguest/vboxguest_core.c
+++ b/drivers/virt/vboxguest/vboxguest_core.c
@@ -1520,7 +1520,8 @@ int vbg_core_ioctl(struct vbg_session *session, unsigned int req, void *data)
 
 	/* For VMMDEV_REQUEST hdr->type != VBG_IOCTL_HDR_TYPE_DEFAULT */
 	if (req_no_size == VBG_IOCTL_VMMDEV_REQUEST(0) ||
-	    req == VBG_IOCTL_VMMDEV_REQUEST_BIG)
+	    req == VBG_IOCTL_VMMDEV_REQUEST_BIG ||
+	    req == VBG_IOCTL_VMMDEV_REQUEST_BIG_ALT)
 		return vbg_ioctl_vmmrequest(gdev, session, data);
 
 	if (hdr->type != VBG_IOCTL_HDR_TYPE_DEFAULT)
@@ -1558,6 +1559,7 @@ int vbg_core_ioctl(struct vbg_session *session, unsigned int req, void *data)
 	case VBG_IOCTL_HGCM_CALL(0):
 		return vbg_ioctl_hgcm_call(gdev, session, f32bit, data);
 	case VBG_IOCTL_LOG(0):
+	case VBG_IOCTL_LOG_ALT(0):
 		return vbg_ioctl_log(data);
 	}
 
diff --git a/drivers/virt/vboxguest/vboxguest_core.h b/drivers/virt/vboxguest/vboxguest_core.h
index 4188c12b839f..77c3a9c8255d 100644
--- a/drivers/virt/vboxguest/vboxguest_core.h
+++ b/drivers/virt/vboxguest/vboxguest_core.h
@@ -15,6 +15,21 @@
 #include <linux/vboxguest.h>
 #include "vmmdev.h"
 
+/*
+ * The mainline kernel version (this version) of the vboxguest module
+ * contained a bug where it defined VBGL_IOCTL_VMMDEV_REQUEST_BIG and
+ * VBGL_IOCTL_LOG using _IOC(_IOC_READ | _IOC_WRITE, 'V', ...) instead
+ * of _IO(V, ...) as the out of tree VirtualBox upstream version does.
+ *
+ * These _ALT definitions keep compatibility with the wrong defines the
+ * mainline kernel version used for a while.
+ * Note the VirtualBox userspace bits have always been built against
+ * VirtualBox upstream's headers, so this is likely not necessary. But
+ * we must never break our ABI so we keep these around to be 100% sure.
+ */
+#define VBG_IOCTL_VMMDEV_REQUEST_BIG_ALT _IOC(_IOC_READ | _IOC_WRITE, 'V', 3, 0)
+#define VBG_IOCTL_LOG_ALT(s)             _IOC(_IOC_READ | _IOC_WRITE, 'V', 9, s)
+
 struct vbg_session;
 
 /** VBox guest memory balloon. */
diff --git a/drivers/virt/vboxguest/vboxguest_linux.c b/drivers/virt/vboxguest/vboxguest_linux.c
index 6e8c0f1c1056..32c2c52f7e84 100644
--- a/drivers/virt/vboxguest/vboxguest_linux.c
+++ b/drivers/virt/vboxguest/vboxguest_linux.c
@@ -131,7 +131,8 @@ static long vbg_misc_device_ioctl(struct file *filp, unsigned int req,
 	 * the need for a bounce-buffer and another copy later on.
 	 */
 	is_vmmdev_req = (req & ~IOCSIZE_MASK) == VBG_IOCTL_VMMDEV_REQUEST(0) ||
-			 req == VBG_IOCTL_VMMDEV_REQUEST_BIG;
+			 req == VBG_IOCTL_VMMDEV_REQUEST_BIG ||
+			 req == VBG_IOCTL_VMMDEV_REQUEST_BIG_ALT;
 
 	if (is_vmmdev_req)
 		buf = vbg_req_alloc(size, VBG_IOCTL_HDR_TYPE_DEFAULT,
diff --git a/include/uapi/linux/vboxguest.h b/include/uapi/linux/vboxguest.h
index 9cec58a6a5ea..f79d7abe27db 100644
--- a/include/uapi/linux/vboxguest.h
+++ b/include/uapi/linux/vboxguest.h
@@ -103,7 +103,7 @@ VMMDEV_ASSERT_SIZE(vbg_ioctl_driver_version_info, 24 + 20);
 
 
 /* IOCTL to perform a VMM Device request larger then 1KB. */
-#define VBG_IOCTL_VMMDEV_REQUEST_BIG	_IOC(_IOC_READ | _IOC_WRITE, 'V', 3, 0)
+#define VBG_IOCTL_VMMDEV_REQUEST_BIG	_IO('V', 3)
 
 
 /** VBG_IOCTL_HGCM_CONNECT data structure. */
@@ -198,7 +198,7 @@ struct vbg_ioctl_log {
 	} u;
 };
 
-#define VBG_IOCTL_LOG(s)		_IOC(_IOC_READ | _IOC_WRITE, 'V', 9, s)
+#define VBG_IOCTL_LOG(s)		_IO('V', 9)
 
 
 /** VBG_IOCTL_WAIT_FOR_EVENTS data structure. */
-- 
2.26.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread
* Re: [PATCH 5/8] virt: vbox: Add support for the new VBG_IOCTL_ACQUIRE_GUEST_CAPABILITIES ioctl
@ 2020-06-04  4:48 kernel test robot
  0 siblings, 0 replies; 13+ messages in thread
From: kernel test robot @ 2020-06-04  4:48 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 11770 bytes --]

CC: kbuild-all(a)lists.01.org
In-Reply-To: <20200520195440.38759-5-hdegoede@redhat.com>
References: <20200520195440.38759-5-hdegoede@redhat.com>
TO: Hans de Goede <hdegoede@redhat.com>

Hi Hans,

I love your patch! Perhaps something to improve:

[auto build test WARNING on soc/for-next]
[also build test WARNING on linus/master linux/master v5.7 next-20200603]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Hans-de-Goede/virt-vbox-Fix-VBGL_IOCTL_VMMDEV_REQUEST_BIG-and-_LOG-req-numbers-to-match-upstream/20200521-062425
base:   https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git for-next
:::::: branch date: 2 weeks ago
:::::: commit date: 2 weeks ago
config: i386-randconfig-m021-20200603 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/virt/vboxguest/vboxguest_core.c:769 vbg_acquire_session_capabilities() error: double unlocked 'gdev->event_spinlock' (orig line 745)

Old smatch warnings:
drivers/virt/vboxguest/vboxguest_core.c:292 vbg_balloon_inflate() warn: should '(((pages[i]) - mem_map) + (0)) << 12' be a 64 bit type?
drivers/virt/vboxguest/vboxguest_core.c:331 vbg_balloon_deflate() warn: should '(((pages[i]) - mem_map) + (0)) << 12' be a 64 bit type?
drivers/virt/vboxguest/vboxguest_core.c:779 vbg_acquire_session_capabilities() error: double unlocked 'gdev->event_spinlock' (orig line 769)
drivers/virt/vboxguest/vboxguest_core.c:801 vbg_acquire_session_capabilities() error: double unlocked 'gdev->event_spinlock' (orig line 769)
drivers/virt/vboxguest/vboxguest_core.c:1207 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)
drivers/virt/vboxguest/vboxguest_core.c:1207 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)
drivers/virt/vboxguest/vboxguest_core.c:1207 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)
drivers/virt/vboxguest/vboxguest_core.c:1207 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)
drivers/virt/vboxguest/vboxguest_core.c:1207 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)
drivers/virt/vboxguest/vboxguest_core.c:1207 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)
drivers/virt/vboxguest/vboxguest_core.c:1223 vbg_ioctl_wait_for_events() error: double unlocked 'gdev->event_spinlock' (orig line 1207)

# https://github.com/0day-ci/linux/commit/039d2c0fea1fd4001836324c30db100660104fd6
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout 039d2c0fea1fd4001836324c30db100660104fd6
vim +769 drivers/virt/vboxguest/vboxguest_core.c

95000c7a4dc1e5 Hans de Goede 2020-05-20  705  
039d2c0fea1fd4 Hans de Goede 2020-05-20  706  /**
039d2c0fea1fd4 Hans de Goede 2020-05-20  707   * Acquire (get exclusive access) guest capabilities for a session.
039d2c0fea1fd4 Hans de Goede 2020-05-20  708   * Takes the session mutex.
039d2c0fea1fd4 Hans de Goede 2020-05-20  709   * Return: 0 or negative errno value.
039d2c0fea1fd4 Hans de Goede 2020-05-20  710   * @gdev:			The Guest extension device.
039d2c0fea1fd4 Hans de Goede 2020-05-20  711   * @session:			The session.
039d2c0fea1fd4 Hans de Goede 2020-05-20  712   * @flags:			Flags (VBGL_IOC_AGC_FLAGS_XXX).
039d2c0fea1fd4 Hans de Goede 2020-05-20  713   * @or_mask:			The capabilities to add.
039d2c0fea1fd4 Hans de Goede 2020-05-20  714   * @not_mask:			The capabilities to remove.
039d2c0fea1fd4 Hans de Goede 2020-05-20  715   * @session_termination:	Set if we're called by the session cleanup code.
039d2c0fea1fd4 Hans de Goede 2020-05-20  716   *				This tweaks the error handling so we perform
039d2c0fea1fd4 Hans de Goede 2020-05-20  717   *				proper session cleanup even if the host
039d2c0fea1fd4 Hans de Goede 2020-05-20  718   *				misbehaves.
039d2c0fea1fd4 Hans de Goede 2020-05-20  719   */
039d2c0fea1fd4 Hans de Goede 2020-05-20  720  static int vbg_acquire_session_capabilities(struct vbg_dev *gdev,
039d2c0fea1fd4 Hans de Goede 2020-05-20  721  					    struct vbg_session *session,
039d2c0fea1fd4 Hans de Goede 2020-05-20  722  					    u32 or_mask, u32 not_mask,
039d2c0fea1fd4 Hans de Goede 2020-05-20  723  					    u32 flags, bool session_termination)
039d2c0fea1fd4 Hans de Goede 2020-05-20  724  {
039d2c0fea1fd4 Hans de Goede 2020-05-20  725  	unsigned long irqflags;
039d2c0fea1fd4 Hans de Goede 2020-05-20  726  	bool wakeup = false;
039d2c0fea1fd4 Hans de Goede 2020-05-20  727  	int ret = 0;
039d2c0fea1fd4 Hans de Goede 2020-05-20  728  
039d2c0fea1fd4 Hans de Goede 2020-05-20  729  	mutex_lock(&gdev->session_mutex);
039d2c0fea1fd4 Hans de Goede 2020-05-20  730  
039d2c0fea1fd4 Hans de Goede 2020-05-20  731  	if (gdev->set_guest_caps_tracker.mask & or_mask) {
039d2c0fea1fd4 Hans de Goede 2020-05-20  732  		vbg_err("%s error: cannot acquire caps which are currently set\n",
039d2c0fea1fd4 Hans de Goede 2020-05-20  733  			__func__);
039d2c0fea1fd4 Hans de Goede 2020-05-20  734  		ret = -EINVAL;
039d2c0fea1fd4 Hans de Goede 2020-05-20  735  		goto out;
039d2c0fea1fd4 Hans de Goede 2020-05-20  736  	}
039d2c0fea1fd4 Hans de Goede 2020-05-20  737  
039d2c0fea1fd4 Hans de Goede 2020-05-20  738  	/*
039d2c0fea1fd4 Hans de Goede 2020-05-20  739  	 * Mark any caps in the or_mask as now being in acquire-mode. Note
039d2c0fea1fd4 Hans de Goede 2020-05-20  740  	 * once caps are in acquire_mode they always stay in this mode.
039d2c0fea1fd4 Hans de Goede 2020-05-20  741  	 * This impacts event handling, so we take the event-lock.
039d2c0fea1fd4 Hans de Goede 2020-05-20  742  	 */
039d2c0fea1fd4 Hans de Goede 2020-05-20  743  	spin_lock_irqsave(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  744  	gdev->acquire_mode_guest_caps |= or_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20 @745  	spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  746  
039d2c0fea1fd4 Hans de Goede 2020-05-20  747  	/* If we only have to switch the caps to acquire mode, we're done. */
039d2c0fea1fd4 Hans de Goede 2020-05-20  748  	if (flags & VBGL_IOC_AGC_FLAGS_CONFIG_ACQUIRE_MODE)
039d2c0fea1fd4 Hans de Goede 2020-05-20  749  		goto out;
039d2c0fea1fd4 Hans de Goede 2020-05-20  750  
039d2c0fea1fd4 Hans de Goede 2020-05-20  751  	not_mask &= ~or_mask; /* or_mask takes priority over not_mask */
039d2c0fea1fd4 Hans de Goede 2020-05-20  752  	not_mask &= session->acquired_guest_caps;
039d2c0fea1fd4 Hans de Goede 2020-05-20  753  	or_mask &= ~session->acquired_guest_caps;
039d2c0fea1fd4 Hans de Goede 2020-05-20  754  
039d2c0fea1fd4 Hans de Goede 2020-05-20  755  	if (or_mask == 0 && not_mask == 0)
039d2c0fea1fd4 Hans de Goede 2020-05-20  756  		goto out;
039d2c0fea1fd4 Hans de Goede 2020-05-20  757  
039d2c0fea1fd4 Hans de Goede 2020-05-20  758  	if (gdev->acquired_guest_caps & or_mask) {
039d2c0fea1fd4 Hans de Goede 2020-05-20  759  		ret = -EBUSY;
039d2c0fea1fd4 Hans de Goede 2020-05-20  760  		goto out;
039d2c0fea1fd4 Hans de Goede 2020-05-20  761  	}
039d2c0fea1fd4 Hans de Goede 2020-05-20  762  
039d2c0fea1fd4 Hans de Goede 2020-05-20  763  	gdev->acquired_guest_caps |= or_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  764  	gdev->acquired_guest_caps &= ~not_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  765  	/* session->acquired_guest_caps impacts event handling, take the lock */
039d2c0fea1fd4 Hans de Goede 2020-05-20  766  	spin_lock_irqsave(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  767  	session->acquired_guest_caps |= or_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  768  	session->acquired_guest_caps &= ~not_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20 @769  	spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  770  
039d2c0fea1fd4 Hans de Goede 2020-05-20  771  	ret = vbg_set_host_capabilities(gdev, session, session_termination);
039d2c0fea1fd4 Hans de Goede 2020-05-20  772  	/* Roll back on failure, unless it's session termination time. */
039d2c0fea1fd4 Hans de Goede 2020-05-20  773  	if (ret < 0 && !session_termination) {
039d2c0fea1fd4 Hans de Goede 2020-05-20  774  		gdev->acquired_guest_caps &= ~or_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  775  		gdev->acquired_guest_caps |= not_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  776  		spin_lock_irqsave(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  777  		session->acquired_guest_caps &= ~or_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  778  		session->acquired_guest_caps |= not_mask;
039d2c0fea1fd4 Hans de Goede 2020-05-20  779  		spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  780  	}
039d2c0fea1fd4 Hans de Goede 2020-05-20  781  
039d2c0fea1fd4 Hans de Goede 2020-05-20  782  	/*
039d2c0fea1fd4 Hans de Goede 2020-05-20  783  	 * If we added a capability, check if that means some other thread in
039d2c0fea1fd4 Hans de Goede 2020-05-20  784  	 * our session should be unblocked because there are events pending
039d2c0fea1fd4 Hans de Goede 2020-05-20  785  	 * (the result of vbg_get_allowed_event_mask_for_session() may change).
039d2c0fea1fd4 Hans de Goede 2020-05-20  786  	 *
039d2c0fea1fd4 Hans de Goede 2020-05-20  787  	 * HACK ALERT! When the seamless support capability is added we generate
039d2c0fea1fd4 Hans de Goede 2020-05-20  788  	 *	a seamless change event so that the ring-3 client can sync with
039d2c0fea1fd4 Hans de Goede 2020-05-20  789  	 *	the seamless state.
039d2c0fea1fd4 Hans de Goede 2020-05-20  790  	 */
039d2c0fea1fd4 Hans de Goede 2020-05-20  791  	if (ret == 0 && or_mask != 0) {
039d2c0fea1fd4 Hans de Goede 2020-05-20  792  		spin_lock_irqsave(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  793  
039d2c0fea1fd4 Hans de Goede 2020-05-20  794  		if (or_mask & VMMDEV_GUEST_SUPPORTS_SEAMLESS)
039d2c0fea1fd4 Hans de Goede 2020-05-20  795  			gdev->pending_events |=
039d2c0fea1fd4 Hans de Goede 2020-05-20  796  				VMMDEV_EVENT_SEAMLESS_MODE_CHANGE_REQUEST;
039d2c0fea1fd4 Hans de Goede 2020-05-20  797  
039d2c0fea1fd4 Hans de Goede 2020-05-20  798  		if (gdev->pending_events)
039d2c0fea1fd4 Hans de Goede 2020-05-20  799  			wakeup = true;
039d2c0fea1fd4 Hans de Goede 2020-05-20  800  
039d2c0fea1fd4 Hans de Goede 2020-05-20  801  		spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
039d2c0fea1fd4 Hans de Goede 2020-05-20  802  
039d2c0fea1fd4 Hans de Goede 2020-05-20  803  		if (wakeup)
039d2c0fea1fd4 Hans de Goede 2020-05-20  804  			wake_up(&gdev->event_wq);
039d2c0fea1fd4 Hans de Goede 2020-05-20  805  	}
039d2c0fea1fd4 Hans de Goede 2020-05-20  806  
039d2c0fea1fd4 Hans de Goede 2020-05-20  807  out:
039d2c0fea1fd4 Hans de Goede 2020-05-20  808  	mutex_unlock(&gdev->session_mutex);
039d2c0fea1fd4 Hans de Goede 2020-05-20  809  
039d2c0fea1fd4 Hans de Goede 2020-05-20  810  	return ret;
039d2c0fea1fd4 Hans de Goede 2020-05-20  811  }
039d2c0fea1fd4 Hans de Goede 2020-05-20  812  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 42870 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2020-06-23 13:10 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-20 19:54 [PATCH 1/8] virt: vbox: Fix VBGL_IOCTL_VMMDEV_REQUEST_BIG and _LOG req numbers to match upstream Hans de Goede
2020-05-20 19:54 ` [PATCH 2/8] virt: vbox: Fix guest capabilities mask check Hans de Goede
2020-05-20 19:54 ` [PATCH 3/8] virt: vbox: Rename guest_caps struct members to set_guest_caps Hans de Goede
2020-05-20 19:54 ` [PATCH 4/8] virt: vbox: Add vbg_set_host_capabilities() helper function Hans de Goede
2020-05-20 19:54 ` [PATCH 5/8] virt: vbox: Add support for the new VBG_IOCTL_ACQUIRE_GUEST_CAPABILITIES ioctl Hans de Goede
2020-05-20 21:47   ` Arnd Bergmann
2020-06-23 13:09     ` Hans de Goede
2020-05-20 19:54 ` [PATCH 6/8] virt: vbox: Add a few new vmmdev request types to the userspace whitelist Hans de Goede
2020-05-20 19:54 ` [PATCH 7/8] virt: vbox: Log unknown ioctl requests as error Hans de Goede
2020-05-20 21:43   ` Arnd Bergmann
2020-05-20 19:54 ` [PATCH 8/8] virt: vbox: Fix some comments which talk about the "session spinlock" Hans de Goede
2020-05-20 21:42 ` [PATCH 1/8] virt: vbox: Fix VBGL_IOCTL_VMMDEV_REQUEST_BIG and _LOG req numbers to match upstream Arnd Bergmann
2020-06-04  4:48 [PATCH 5/8] virt: vbox: Add support for the new VBG_IOCTL_ACQUIRE_GUEST_CAPABILITIES ioctl kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.