From: Stephen Hemminger Date: Tue, 9 Jan 2018 20:57:31 +0000 (-0800) Subject: uio_hv_generic: check that host supports monitor page X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=06028d15177a1b406b7b075ea47c6a352732f23a;p=linux.git uio_hv_generic: check that host supports monitor page In order for userspace application to signal host, it needs the host to support the monitor page property. Check for the flag and fail if this is not supported. Signed-off-by: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/uio/uio_hv_generic.c b/drivers/uio/uio_hv_generic.c index dcd80aad9636b..ee6d862ef4bd4 100644 --- a/drivers/uio/uio_hv_generic.c +++ b/drivers/uio/uio_hv_generic.c @@ -133,6 +133,13 @@ hv_uio_probe(struct hv_device *dev, if (ret) goto fail; + /* Communicating with host has to be via shared memory not hypercall */ + if (!dev->channel->offermsg.monitor_allocated) { + dev_err(&dev->device, "vmbus channel requires hypercall\n"); + ret = -ENOTSUPP; + goto fail_close; + } + dev->channel->inbound.ring_buffer->interrupt_mask = 1; set_channel_read_mode(dev->channel, HV_CALL_ISR);