diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2012-12-01 15:46:34 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-17 19:46:39 +0100 |
commit | 7ae3e035195735f9b6ce3308b6240af877a41ea0 (patch) | |
tree | a33df83eaf8364a013c6dd98a87ae9463fc9cf9f /drivers/hv/hv_util.c | |
parent | Drivers: hv: Add state to manage batched reading (diff) | |
download | linux-7ae3e035195735f9b6ce3308b6240af877a41ea0.tar.xz linux-7ae3e035195735f9b6ce3308b6240af877a41ea0.zip |
Drivers: hv: Turn off batched reading for util drivers
Util driver is not a performance critical driver and furthermore some
util services such as KVP can only handle one outstanding message
from the host. Turn off batched reading for util drivers.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/hv_util.c')
-rw-r--r-- | drivers/hv/hv_util.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/hv/hv_util.c b/drivers/hv/hv_util.c index a0667de7a04c..a62a76062508 100644 --- a/drivers/hv/hv_util.c +++ b/drivers/hv/hv_util.c @@ -274,6 +274,16 @@ static int util_probe(struct hv_device *dev, } } + /* + * The set of services managed by the util driver are not performance + * critical and do not need batched reading. Furthermore, some services + * such as KVP can only handle one message from the host at a time. + * Turn off batched reading for all util drivers before we open the + * channel. + */ + + set_channel_read_state(dev->channel, false); + ret = vmbus_open(dev->channel, 4 * PAGE_SIZE, 4 * PAGE_SIZE, NULL, 0, srv->util_cb, dev->channel); if (ret) |