]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/hv/channel.c
Drivers: hv: vmbus: Implement a mechanism to tag the channel for low latency
[linux.git] / drivers / hv / channel.c
index 9a49505a8e0680da8f0acd1761fbca5c043bc0ff..884cebf5f9b93111e83cc0e80ad37d42cadafbf4 100644 (file)
@@ -43,7 +43,12 @@ static void vmbus_setevent(struct vmbus_channel *channel)
 {
        struct hv_monitor_page *monitorpage;
 
-       if (channel->offermsg.monitor_allocated) {
+       /*
+        * For channels marked as in "low latency" mode
+        * bypass the monitor page mechanism.
+        */
+       if ((channel->offermsg.monitor_allocated) &&
+           (!channel->low_latency)) {
                /* Each u32 represents 32 channels */
                sync_set_bit(channel->offermsg.child_relid & 31,
                        (unsigned long *) vmbus_connection.send_int_page +