6b51fd3f65
xenbus_map_ring_valloc() maps a ring page and returns the status of the used grant (0 meaning success). There are Xen hypervisors which might return the value 1 for the status of a failed grant mapping due to a bug. Some callers of xenbus_map_ring_valloc() test for errors by testing the returned status to be less than zero, resulting in no error detected and crashing later due to a not available ring page. Set the return value of xenbus_map_ring_valloc() to GNTST_general_error in case the grant status reported by Xen is greater than zero. This is part of XSA-316. Signed-off-by: Juergen Gross <jgross@suse.com> Reviewed-by: Wei Liu <wl@xen.org> Link: https://lore.kernel.org/r/20200326080358.1018-1-jgross@suse.com Signed-off-by: Juergen Gross <jgross@suse.com> |
||
---|---|---|
.. | ||
Makefile | ||
xenbus.h | ||
xenbus_client.c | ||
xenbus_comms.c | ||
xenbus_dev_backend.c | ||
xenbus_dev_frontend.c | ||
xenbus_probe.c | ||
xenbus_probe_backend.c | ||
xenbus_probe_frontend.c | ||
xenbus_xs.c |