diff options
author | Linus Torvalds | 2020-04-17 10:35:17 -0700 |
---|---|---|
committer | Linus Torvalds | 2020-04-17 10:35:17 -0700 |
commit | d0a4ebe7d1c5970f00cca09cbdfcb8ae1658349d (patch) | |
tree | cda7bc352b06be8b0ab014d63c777d31cdbdbb83 /drivers | |
parent | a2286a449baf11624d393aad28c1081cee3f47fb (diff) | |
parent | 74f4c438f22ca3fff157fb45e694805931487c55 (diff) |
Merge tag 'for-linus-5.7-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
Pull xen update from Juergen Gross:
- a small cleanup patch
- a security fix for a bug in the Xen hypervisor to avoid enabling Xen
guests to crash dom0 on an unfixed hypervisor.
* tag 'for-linus-5.7-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
arm/xen: make _xen_start_info static
xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/xen/xenbus/xenbus_client.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/xen/xenbus/xenbus_client.c b/drivers/xen/xenbus/xenbus_client.c index 385843256865..040d2a43e8e3 100644 --- a/drivers/xen/xenbus/xenbus_client.c +++ b/drivers/xen/xenbus/xenbus_client.c @@ -448,7 +448,14 @@ EXPORT_SYMBOL_GPL(xenbus_free_evtchn); int xenbus_map_ring_valloc(struct xenbus_device *dev, grant_ref_t *gnt_refs, unsigned int nr_grefs, void **vaddr) { - return ring_ops->map(dev, gnt_refs, nr_grefs, vaddr); + int err; + + err = ring_ops->map(dev, gnt_refs, nr_grefs, vaddr); + /* Some hypervisors are buggy and can return 1. */ + if (err > 0) + err = GNTST_general_error; + + return err; } EXPORT_SYMBOL_GPL(xenbus_map_ring_valloc); |