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 <sthemmin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Stephen Hemminger 2018-01-09 12:57:31 -08:00 committed by Greg Kroah-Hartman
parent e7d214642a
commit 06028d1517
1 changed files with 7 additions and 0 deletions

View File

@ -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);