Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1742110 > unrolled thread
| Started by | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| First post | 2017-09-29 15:30 +0200 |
| Last post | 2017-09-29 15:40 +0200 |
| Articles | 10 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v2 00/16] Hyper-V: add tracing to VMBus module and trace all messages Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:30 +0200
[PATCH v2 13/16] hyper-v: trace vmbus_teardown_gpadl() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:30 +0200
[PATCH v2 05/16] hyper-v: trace vmbus_onopen_result() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:30 +0200
[PATCH v2 15/16] hyper-v: trace vmbus_release_relid() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:30 +0200
[PATCH v2 12/16] hyper-v: trace vmbus_establish_gpadl() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:30 +0200
[PATCH v2 02/16] hyper-v: trace vmbus_on_message() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:40 +0200
[PATCH v2 08/16] hyper-v: trace vmbus_onversion_response() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:40 +0200
[PATCH v2 04/16] hyper-v: trace vmbus_onoffer_rescind() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:40 +0200
[PATCH v2 11/16] hyper-v: trace vmbus_close_internal() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:40 +0200
[PATCH v2 06/16] hyper-v: trace vmbus_ongpadl_created() Vitaly Kuznetsov <vkuznets@redhat.com> - 2017-09-29 15:40 +0200
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:30 +0200 |
| Subject | [PATCH v2 00/16] Hyper-V: add tracing to VMBus module and trace all messages |
| Message-ID | <uv3wB-6Hg-3@gated-at.bofh.it> |
Changes since v1:
- Use DECLARE_EVENT_CLASS/DEFINE_EVENT_PRINT for vmbus_on_msg_dpc/
vmbus_onmessage tracing (Steven Rostedt)
Messages between guest and host are used in Hyper-V as control flow. To
simplify debugging various issues which are often hard to reproduce add
tracepoints to all message senders and handlers. This is not a performance
critical path and tracing overhead should be negligible.
The example usage and output is:
Enable all tracing events:
# echo 1 > /sys/kernel/debug/tracing/events/hyperv/enable
Do something which causes messages to be sent between host and guest, e.g.
hot remove a VMBus device.
Check events:
# cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# _-----=> irqs-off
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / delay
# TASK-PID CPU# |||| TIMESTAMP FUNCTION
# | | | |||| | |
<idle>-0 [005] .Ns. 465.923970: vmbus_on_msg_dpc: message 2 received
ksoftirqd/5-41 [005] ..s. 465.923998: vmbus_on_msg_dpc: message 2 received
kworker/5:1-64 [005] .... 465.924005: vmbus_on_message: processing message 2
kworker/5:1-64 [005] .... 465.924005: vmbus_onoffer_rescind: child_relid 0x16
<idle>-0 [005] ..s. 465.924114: vmbus_on_msg_dpc: message 2 received
<idle>-0 [005] ..s. 465.924120: vmbus_on_msg_dpc: message 2 received
<idle>-0 [005] .Ns. 465.924502: vmbus_on_msg_dpc: message 2 received
kworker/5:2-208 [005] .... 465.924520: vmbus_on_message: processing message 2
kworker/5:2-208 [005] .... 465.924520: vmbus_onoffer_rescind: child_relid 0x18
kworker/5:0-2533 [005] .... 465.924713: vmbus_on_message: processing message 2
kworker/5:0-2533 [005] .... 465.924713: vmbus_onoffer_rescind: child_relid 0x17
kworker/5:3-2534 [005] .... 465.924810: vmbus_on_message: processing message 2
kworker/5:3-2534 [005] .... 465.924810: vmbus_onoffer_rescind: child_relid 0x15
kworker/5:4-2535 [005] .... 465.924900: vmbus_on_message: processing message 2
kworker/5:4-2535 [005] .... 465.924901: vmbus_onoffer_rescind: child_relid 0x10
kworker/5:4-2535 [005] .... 465.932588: vmbus_close_internal: sending child_relid 0x15, ret 0
kworker/5:4-2535 [005] .... 465.932623: vmbus_close_internal: sending child_relid 0x16, ret 0
kworker/5:4-2535 [005] .... 465.932656: vmbus_close_internal: sending child_relid 0x17, ret 0
kworker/5:4-2535 [005] .... 465.932683: vmbus_close_internal: sending child_relid 0x18, ret 0
kworker/5:4-2535 [005] .... 465.932709: vmbus_close_internal: sending child_relid 0x10, ret 0
kworker/5:4-2535 [005] .... 465.986417: vmbus_release_relid: sending child_relid 0x10, ret 0
CHANNELMSG_UNLOAD/CHANNELMSG_UNLOAD_RESPONSE are not traced as these are
mostly used on crash.
Vitaly Kuznetsov (16):
hyper-v: trace vmbus_on_msg_dpc()
hyper-v: trace vmbus_on_message()
hyper-v: trace vmbus_onoffer()
hyper-v: trace vmbus_onoffer_rescind()
hyper-v: trace vmbus_onopen_result()
hyper-v: trace vmbus_ongpadl_created()
hyper-v: trace vmbus_ongpadl_torndown()
hyper-v: trace vmbus_onversion_response()
hyper-v: trace vmbus_request_offers()
hyper-v: trace vmbus_open()
hyper-v: trace vmbus_close_internal()
hyper-v: trace vmbus_establish_gpadl()
hyper-v: trace vmbus_teardown_gpadl()
hyper-v: trace vmbus_negotiate_version()
hyper-v: trace vmbus_release_relid()
hyper-v: trace vmbus_send_tl_connect_request()
drivers/hv/Makefile | 4 +-
drivers/hv/channel.c | 19 ++-
drivers/hv/channel_mgmt.c | 26 +++-
drivers/hv/connection.c | 3 +
drivers/hv/hv_trace.c | 4 +
drivers/hv/hv_trace.h | 304 ++++++++++++++++++++++++++++++++++++++++++++++
drivers/hv/hyperv_vmbus.h | 2 +
drivers/hv/vmbus_drv.c | 2 +
8 files changed, 359 insertions(+), 5 deletions(-)
create mode 100644 drivers/hv/hv_trace.c
create mode 100644 drivers/hv/hv_trace.h
--
2.13.5
[toc] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:30 +0200 |
| Subject | [PATCH v2 13/16] hyper-v: trace vmbus_teardown_gpadl() |
| Message-ID | <uv3wC-6Hg-27@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_GPADL_TEARDOWN sender.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel.c | 2 ++
drivers/hv/hv_trace.h | 18 ++++++++++++++++++
2 files changed, 20 insertions(+)
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
index cf6bc0667cde..9cb81838e7bb 100644
--- a/drivers/hv/channel.c
+++ b/drivers/hv/channel.c
@@ -519,6 +519,8 @@ int vmbus_teardown_gpadl(struct vmbus_channel *channel, u32 gpadl_handle)
ret = vmbus_post_msg(msg, sizeof(struct vmbus_channel_gpadl_teardown),
true);
+ trace_vmbus_teardown_gpadl(msg, ret);
+
if (ret)
goto post_msg_err;
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index 9eb8ee51a77f..6c585a012a40 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -214,6 +214,24 @@ TRACE_EVENT(vmbus_establish_gpadl_body,
)
);
+TRACE_EVENT(vmbus_teardown_gpadl,
+ TP_PROTO(const struct vmbus_channel_gpadl_teardown *msg, int ret),
+ TP_ARGS(msg, ret),
+ TP_STRUCT__entry(
+ __field(u32, child_relid)
+ __field(u32, gpadl)
+ __field(int, ret)
+ ),
+ TP_fast_assign(
+ __entry->child_relid = msg->child_relid;
+ __entry->gpadl = msg->gpadl;
+ __entry->ret = ret;
+ ),
+ TP_printk("sending child_relid 0x%x, gpadl 0x%x, ret %d",
+ __entry->child_relid, __entry->gpadl, __entry->ret
+ )
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:30 +0200 |
| Subject | [PATCH v2 05/16] hyper-v: trace vmbus_onopen_result() |
| Message-ID | <uv3wD-6Hg-31@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_OPENCHANNEL_RESULT handler.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 17 +++++++++++++++++
2 files changed, 19 insertions(+)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 563653a02ab6..2abe0563876b 100644
--- a/drivers/hv/channel_mgmt.c
+++ b/drivers/hv/channel_mgmt.c
@@ -980,6 +980,8 @@ static void vmbus_onopen_result(struct vmbus_channel_message_header *hdr)
result = (struct vmbus_channel_open_result *)hdr;
+ trace_vmbus_onopen_result(result);
+
/*
* Find the open msg, copy the result and signal/unblock the wait event
*/
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index 8bb8806a16f7..c42653c21238 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -69,6 +69,23 @@ TRACE_EVENT(vmbus_onoffer_rescind,
TP_printk("child_relid 0x%x", __entry->child_relid)
);
+TRACE_EVENT(vmbus_onopen_result,
+ TP_PROTO(const struct vmbus_channel_open_result *result),
+ TP_ARGS(result),
+ TP_STRUCT__entry(
+ __field(u32, child_relid)
+ __field(u32, openid)
+ __field(u32, status)
+ ),
+ TP_fast_assign(__entry->child_relid = result->child_relid;
+ __entry->openid = result->openid;
+ __entry->status = result->status;
+ ),
+ TP_printk("child_relid 0x%x, openid %d, status %d",
+ __entry->child_relid, __entry->openid, __entry->status
+ )
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:30 +0200 |
| Subject | [PATCH v2 15/16] hyper-v: trace vmbus_release_relid() |
| Message-ID | <uv3wC-6Hg-29@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_RELID_RELEASED sender.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel_mgmt.c | 7 +++++--
drivers/hv/hv_trace.h | 16 ++++++++++++++++
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 5c39388545f5..ca2dea638bfb 100644
--- a/drivers/hv/channel_mgmt.c
+++ b/drivers/hv/channel_mgmt.c
@@ -373,12 +373,15 @@ static void percpu_channel_deq(void *arg)
static void vmbus_release_relid(u32 relid)
{
struct vmbus_channel_relid_released msg;
+ int ret;
memset(&msg, 0, sizeof(struct vmbus_channel_relid_released));
msg.child_relid = relid;
msg.header.msgtype = CHANNELMSG_RELID_RELEASED;
- vmbus_post_msg(&msg, sizeof(struct vmbus_channel_relid_released),
- true);
+ ret = vmbus_post_msg(&msg, sizeof(struct vmbus_channel_relid_released),
+ true);
+
+ trace_vmbus_release_relid(&msg, ret);
}
void hv_process_channel_removal(struct vmbus_channel *channel, u32 relid)
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index 570482014740..3e751f948a5f 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -258,6 +258,22 @@ TRACE_EVENT(vmbus_negotiate_version,
)
);
+TRACE_EVENT(vmbus_release_relid,
+ TP_PROTO(const struct vmbus_channel_relid_released *msg, int ret),
+ TP_ARGS(msg, ret),
+ TP_STRUCT__entry(
+ __field(u32, child_relid)
+ __field(int, ret)
+ ),
+ TP_fast_assign(
+ __entry->child_relid = msg->child_relid;
+ __entry->ret = ret;
+ ),
+ TP_printk("sending child_relid 0x%x, ret %d",
+ __entry->child_relid, __entry->ret
+ )
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:30 +0200 |
| Subject | [PATCH v2 12/16] hyper-v: trace vmbus_establish_gpadl() |
| Message-ID | <uv3wD-6Hg-43@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_GPADL_HEADER/CHANNELMSG_GPADL_BODY sender.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel.c | 6 ++++++
drivers/hv/hv_trace.h | 42 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 48 insertions(+)
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
index f919d9dd984b..cf6bc0667cde 100644
--- a/drivers/hv/channel.c
+++ b/drivers/hv/channel.c
@@ -435,6 +435,9 @@ int vmbus_establish_gpadl(struct vmbus_channel *channel, void *kbuffer,
ret = vmbus_post_msg(gpadlmsg, msginfo->msgsize -
sizeof(*msginfo), true);
+
+ trace_vmbus_establish_gpadl_header(gpadlmsg, ret);
+
if (ret != 0)
goto cleanup;
@@ -450,6 +453,9 @@ int vmbus_establish_gpadl(struct vmbus_channel *channel, void *kbuffer,
ret = vmbus_post_msg(gpadl_body,
submsginfo->msgsize - sizeof(*submsginfo),
true);
+
+ trace_vmbus_establish_gpadl_body(gpadl_body, ret);
+
if (ret != 0)
goto cleanup;
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index ecfacb114331..9eb8ee51a77f 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -172,6 +172,48 @@ TRACE_EVENT(vmbus_close_internal,
__entry->ret)
);
+TRACE_EVENT(vmbus_establish_gpadl_header,
+ TP_PROTO(const struct vmbus_channel_gpadl_header *msg, int ret),
+ TP_ARGS(msg, ret),
+ TP_STRUCT__entry(
+ __field(u32, child_relid)
+ __field(u32, gpadl)
+ __field(u16, range_buflen)
+ __field(u16, rangecount)
+ __field(int, ret)
+ ),
+ TP_fast_assign(
+ __entry->child_relid = msg->child_relid;
+ __entry->gpadl = msg->gpadl;
+ __entry->range_buflen = msg->range_buflen;
+ __entry->rangecount = msg->rangecount;
+ __entry->ret = ret;
+ ),
+ TP_printk("sending child_relid 0x%x, gpadl 0x%x, range_buflen %d "
+ "rangecount %d, ret %d",
+ __entry->child_relid, __entry->gpadl,
+ __entry->range_buflen, __entry->rangecount, __entry->ret
+ )
+ );
+
+TRACE_EVENT(vmbus_establish_gpadl_body,
+ TP_PROTO(const struct vmbus_channel_gpadl_body *msg, int ret),
+ TP_ARGS(msg, ret),
+ TP_STRUCT__entry(
+ __field(u32, msgnumber)
+ __field(u32, gpadl)
+ __field(int, ret)
+ ),
+ TP_fast_assign(
+ __entry->msgnumber = msg->msgnumber;
+ __entry->gpadl = msg->gpadl;
+ __entry->ret = ret;
+ ),
+ TP_printk("sending msgnumber %d, gpadl 0x%x, ret %d",
+ __entry->msgnumber, __entry->gpadl, __entry->ret
+ )
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:40 +0200 |
| Subject | [PATCH v2 02/16] hyper-v: trace vmbus_on_message() |
| Message-ID | <uv3Gi-6KD-5@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to vmbus_on_message() which is called when we start
processing a blocking from work context.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 5 +++++
2 files changed, 7 insertions(+)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 060df71c2e8b..ddeebba8971e 100644
--- a/drivers/hv/channel_mgmt.c
+++ b/drivers/hv/channel_mgmt.c
@@ -1170,6 +1170,8 @@ void vmbus_onmessage(void *context)
hdr = (struct vmbus_channel_message_header *)msg->u.payload;
size = msg->header.payload_size;
+ trace_vmbus_on_message(hdr);
+
if (hdr->msgtype >= CHANNELMSG_COUNT) {
pr_err("Received invalid channel message type %d size %d\n",
hdr->msgtype, size);
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index 82432e351724..4aac780099b4 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -19,6 +19,11 @@ DEFINE_EVENT_PRINT(vmbus_hdr_msg, vmbus_on_msg_dpc,
TP_ARGS(hdr),
TP_printk("message %u received", __entry->msgtype));
+DEFINE_EVENT_PRINT(vmbus_hdr_msg, vmbus_on_message,
+ TP_PROTO(const struct vmbus_channel_message_header *hdr),
+ TP_ARGS(hdr),
+ TP_printk("processing message %u", __entry->msgtype));
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:40 +0200 |
| Subject | [PATCH v2 08/16] hyper-v: trace vmbus_onversion_response() |
| Message-ID | <uv3Gi-6KD-11@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_VERSION_RESPONSE handler.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel_mgmt.c | 3 +++
drivers/hv/hv_trace.h | 11 +++++++++++
2 files changed, 14 insertions(+)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 1ff2cc064850..a9a1fc1424c6 100644
--- a/drivers/hv/channel_mgmt.c
+++ b/drivers/hv/channel_mgmt.c
@@ -1121,6 +1121,9 @@ static void vmbus_onversion_response(
unsigned long flags;
version_response = (struct vmbus_channel_version_response *)hdr;
+
+ trace_vmbus_onversion_response(version_response);
+
spin_lock_irqsave(&vmbus_connection.channelmsg_lock, flags);
list_for_each_entry(msginfo, &vmbus_connection.chn_msg_list,
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index 0c50527c815c..e99db56d27b7 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -111,6 +111,17 @@ TRACE_EVENT(vmbus_ongpadl_torndown,
TP_printk("gpadl 0x%x", __entry->gpadl)
);
+TRACE_EVENT(vmbus_onversion_response,
+ TP_PROTO(const struct vmbus_channel_version_response *response),
+ TP_ARGS(response),
+ TP_STRUCT__entry(
+ __field(u8, ver)
+ ),
+ TP_fast_assign(__entry->ver = response->version_supported;
+ ),
+ TP_printk("version_supported %d", __entry->ver)
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:40 +0200 |
| Subject | [PATCH v2 04/16] hyper-v: trace vmbus_onoffer_rescind() |
| Message-ID | <uv3Gi-6KD-25@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_RESCIND_CHANNELOFFER handler.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 8 ++++++++
2 files changed, 10 insertions(+)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 290ea25ce409..563653a02ab6 100644
--- a/drivers/hv/channel_mgmt.c
+++ b/drivers/hv/channel_mgmt.c
@@ -841,6 +841,8 @@ static void vmbus_onoffer_rescind(struct vmbus_channel_message_header *hdr)
rescind = (struct vmbus_channel_rescind_offer *)hdr;
+ trace_vmbus_onoffer_rescind(rescind);
+
/*
* The offer msg and the corresponding rescind msg
* from the host are guranteed to be ordered -
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index d38f8ed272ca..8bb8806a16f7 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -61,6 +61,14 @@ TRACE_EVENT(vmbus_onoffer,
)
);
+TRACE_EVENT(vmbus_onoffer_rescind,
+ TP_PROTO(const struct vmbus_channel_rescind_offer *offer),
+ TP_ARGS(offer),
+ TP_STRUCT__entry(__field(u32, child_relid)),
+ TP_fast_assign(__entry->child_relid = offer->child_relid),
+ TP_printk("child_relid 0x%x", __entry->child_relid)
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:40 +0200 |
| Subject | [PATCH v2 11/16] hyper-v: trace vmbus_close_internal() |
| Message-ID | <uv3Gi-6KD-23@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_CLOSECHANNEL sender.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel.c | 2 ++
drivers/hv/hv_trace.h | 15 +++++++++++++++
2 files changed, 17 insertions(+)
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
index 82cb57e2d6bd..f919d9dd984b 100644
--- a/drivers/hv/channel.c
+++ b/drivers/hv/channel.c
@@ -591,6 +591,8 @@ static int vmbus_close_internal(struct vmbus_channel *channel)
ret = vmbus_post_msg(msg, sizeof(struct vmbus_channel_close_channel),
true);
+ trace_vmbus_close_internal(msg, ret);
+
if (ret) {
pr_err("Close failed: close post msg return is %d\n", ret);
/*
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index 01acbbf7badf..ecfacb114331 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -157,6 +157,21 @@ TRACE_EVENT(vmbus_open,
)
);
+TRACE_EVENT(vmbus_close_internal,
+ TP_PROTO(const struct vmbus_channel_close_channel *msg, int ret),
+ TP_ARGS(msg, ret),
+ TP_STRUCT__entry(
+ __field(u32, child_relid)
+ __field(int, ret)
+ ),
+ TP_fast_assign(
+ __entry->child_relid = msg->child_relid;
+ __entry->ret = ret;
+ ),
+ TP_printk("sending child_relid 0x%x, ret %d", __entry->child_relid,
+ __entry->ret)
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [next] | [standalone]
| From | Vitaly Kuznetsov <vkuznets@redhat.com> |
|---|---|
| Date | 2017-09-29 15:40 +0200 |
| Subject | [PATCH v2 06/16] hyper-v: trace vmbus_ongpadl_created() |
| Message-ID | <uv3Gj-6KD-35@gated-at.bofh.it> |
| In reply to | #1742110 |
Add tracepoint to CHANNELMSG_GPADL_CREATED handler.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 17 +++++++++++++++++
2 files changed, 19 insertions(+)
diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
index 2abe0563876b..af2448e245ca 100644
--- a/drivers/hv/channel_mgmt.c
+++ b/drivers/hv/channel_mgmt.c
@@ -1026,6 +1026,8 @@ static void vmbus_ongpadl_created(struct vmbus_channel_message_header *hdr)
gpadlcreated = (struct vmbus_channel_gpadl_created *)hdr;
+ trace_vmbus_ongpadl_created(gpadlcreated);
+
/*
* Find the establish msg, copy the result and signal/unblock the wait
* event
diff --git a/drivers/hv/hv_trace.h b/drivers/hv/hv_trace.h
index c42653c21238..e5973ab27c58 100644
--- a/drivers/hv/hv_trace.h
+++ b/drivers/hv/hv_trace.h
@@ -86,6 +86,23 @@ TRACE_EVENT(vmbus_onopen_result,
)
);
+TRACE_EVENT(vmbus_ongpadl_created,
+ TP_PROTO(const struct vmbus_channel_gpadl_created *gpadlcreated),
+ TP_ARGS(gpadlcreated),
+ TP_STRUCT__entry(
+ __field(u32, child_relid)
+ __field(u32, gpadl)
+ __field(u32, status)
+ ),
+ TP_fast_assign(__entry->child_relid = gpadlcreated->child_relid;
+ __entry->gpadl = gpadlcreated->gpadl;
+ __entry->status = gpadlcreated->creation_status;
+ ),
+ TP_printk("child_relid 0x%x, gpadl 0x%x, creation_status %d",
+ __entry->child_relid, __entry->gpadl, __entry->status
+ )
+ );
+
#undef TRACE_INCLUDE_PATH
#define TRACE_INCLUDE_PATH .
#undef TRACE_INCLUDE_FILE
--
2.13.5
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web