[PATCH v2 2/2] Drivers: hv: vmbus: Return -EINVAL if monitor_allocated not set

Michael Kelley mikelley at microsoft.com
Wed Feb 20 16:11:17 UTC 2019


From: Kimberly Brown <kimbrownkd at gmail.com>  Sent: Monday, February 18, 2019 9:38 PM
> 
> There are two methods for signaling the host: the monitor page mechanism
> and hypercalls. The monitor page mechanism is used by performance
> critical channels (storage, networking, etc.) because it provides
> improved throughput. However, latency is increased. Monitor pages are
> allocated to these channels.
> 
> Monitor pages are not allocated to channels that do not use the monitor
> page mechanism. Therefore, these channels do not have a valid monitor id
> or valid monitor page data. In these cases, some of the "_show"
> functions return incorrect data. They return an invalid monitor id and
> data that is beyond the bounds of the hv_monitor_page array fields.
> 
> The "channel->offermsg.monitor_allocated" value can be used to determine
> whether monitor pages have been allocated to a channel. In the affected
> "_show" functions, verify that "channel->offermsg.monitor_allocated" is
> set before accessing the monitor id or the monitor page data. If
> "channel->offermsg.monitor_allocated" is not set, return -EINVAL.
> 
> Signed-off-by: Kimberly Brown <kimbrownkd at gmail.com>
>

Reviewed-by: Michael Kelley <mikelley at microsoft.com>


More information about the devel mailing list