hyper-v: trace vmbus_send_tl_connect_request()
authorVitaly Kuznetsov <vkuznets@redhat.com>
Sun, 29 Oct 2017 19:21:15 +0000 (12:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 4 Nov 2017 11:04:26 +0000 (12:04 +0100)
Add tracepoint to CHANNELMSG_TL_CONNECT_REQUEST sender.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hv/channel.c
drivers/hv/hv_trace.h

index 0382d7b600a1a46be1efdc316a6cbe6dfa75cd64..ed3634e53e15dc9ad6eba030ee91c6de53a70c28 100644 (file)
@@ -236,13 +236,18 @@ int vmbus_send_tl_connect_request(const uuid_le *shv_guest_servie_id,
                                  const uuid_le *shv_host_servie_id)
 {
        struct vmbus_channel_tl_connect_request conn_msg;
+       int ret;
 
        memset(&conn_msg, 0, sizeof(conn_msg));
        conn_msg.header.msgtype = CHANNELMSG_TL_CONNECT_REQUEST;
        conn_msg.guest_endpoint_id = *shv_guest_servie_id;
        conn_msg.host_service_id = *shv_host_servie_id;
 
-       return vmbus_post_msg(&conn_msg, sizeof(conn_msg), true);
+       ret = vmbus_post_msg(&conn_msg, sizeof(conn_msg), true);
+
+       trace_vmbus_send_tl_connect_request(&conn_msg, ret);
+
+       return ret;
 }
 EXPORT_SYMBOL_GPL(vmbus_send_tl_connect_request);
 
index f0e437c3522f3d75f41b2c90472f0366d8a04fb7..5382d963030664b1b688db2700fbd2a7fe03f1fb 100644 (file)
@@ -274,6 +274,26 @@ TRACE_EVENT(vmbus_release_relid,
                    )
        );
 
+TRACE_EVENT(vmbus_send_tl_connect_request,
+           TP_PROTO(const struct vmbus_channel_tl_connect_request *msg,
+                    int ret),
+           TP_ARGS(msg, ret),
+           TP_STRUCT__entry(
+                   __array(char, guest_id, 16)
+                   __array(char, host_id, 16)
+                   __field(int, ret)
+                   ),
+           TP_fast_assign(
+                   memcpy(__entry->guest_id, &msg->guest_endpoint_id.b, 16);
+                   memcpy(__entry->host_id, &msg->host_service_id.b, 16);
+                   __entry->ret = ret;
+                   ),
+           TP_printk("sending guest_endpoint_id %pUl, host_service_id %pUl, "
+                     "ret %d",
+                     __entry->guest_id, __entry->host_id, __entry->ret
+                   )
+       );
+
 #undef TRACE_INCLUDE_PATH
 #define TRACE_INCLUDE_PATH .
 #undef TRACE_INCLUDE_FILE