]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/hv/channel.c
hv: make "monitor_pages" a "real" pointer array
[karo-tx-linux.git] / drivers / hv / channel.c
index dde30b48c56c5ea93caf04b3ab6c40684341b028..04bf06560085ea8c1294e59de0dc11c71d37c6fc 100644 (file)
@@ -47,8 +47,8 @@ static void vmbus_setevent(struct vmbus_channel *channel)
                        (unsigned long *) vmbus_connection.send_int_page +
                        (channel->offermsg.child_relid >> 5));
 
-               monitorpage = vmbus_connection.monitor_pages;
-               monitorpage++; /* Get the child to parent monitor page */
+               /* Get the child to parent monitor page */
+               monitorpage = vmbus_connection.monitor_pages[1];
 
                sync_set_bit(channel->monitor_bit,
                        (unsigned long *)&monitorpage->trigger_group
@@ -69,8 +69,7 @@ void vmbus_get_debug_info(struct vmbus_channel *channel,
        u8 monitor_group = (u8)channel->offermsg.monitorid / 32;
        u8 monitor_offset = (u8)channel->offermsg.monitorid % 32;
 
-       monitorpage = (struct hv_monitor_page *)vmbus_connection.monitor_pages;
-
+       monitorpage = vmbus_connection.monitor_pages[0];
        debuginfo->servermonitor_pending =
                        monitorpage->trigger_group[monitor_group].pending;
        debuginfo->servermonitor_latency =
@@ -79,8 +78,7 @@ void vmbus_get_debug_info(struct vmbus_channel *channel,
                        monitorpage->parameter[monitor_group]
                                        [monitor_offset].connectionid.u.id;
 
-       monitorpage++;
-
+       monitorpage = vmbus_connection.monitor_pages[1];
        debuginfo->clientmonitor_pending =
                        monitorpage->trigger_group[monitor_group].pending;
        debuginfo->clientmonitor_latency =