18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ci#undef TRACE_SYSTEM 48c2ecf20Sopenharmony_ci#define TRACE_SYSTEM hyperv 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#if !defined(_HV_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) 78c2ecf20Sopenharmony_ci#define _HV_TRACE_H 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include <linux/tracepoint.h> 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(vmbus_hdr_msg, 128c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_message_header *hdr), 138c2ecf20Sopenharmony_ci TP_ARGS(hdr), 148c2ecf20Sopenharmony_ci TP_STRUCT__entry(__field(unsigned int, msgtype)), 158c2ecf20Sopenharmony_ci TP_fast_assign(__entry->msgtype = hdr->msgtype;), 168c2ecf20Sopenharmony_ci TP_printk("msgtype=%u", __entry->msgtype) 178c2ecf20Sopenharmony_ci); 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ciDEFINE_EVENT(vmbus_hdr_msg, vmbus_on_msg_dpc, 208c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_message_header *hdr), 218c2ecf20Sopenharmony_ci TP_ARGS(hdr) 228c2ecf20Sopenharmony_ci); 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciDEFINE_EVENT(vmbus_hdr_msg, vmbus_on_message, 258c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_message_header *hdr), 268c2ecf20Sopenharmony_ci TP_ARGS(hdr) 278c2ecf20Sopenharmony_ci); 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_onoffer, 308c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_offer_channel *offer), 318c2ecf20Sopenharmony_ci TP_ARGS(offer), 328c2ecf20Sopenharmony_ci TP_STRUCT__entry( 338c2ecf20Sopenharmony_ci __field(u32, child_relid) 348c2ecf20Sopenharmony_ci __field(u8, monitorid) 358c2ecf20Sopenharmony_ci __field(u16, is_ddc_int) 368c2ecf20Sopenharmony_ci __field(u32, connection_id) 378c2ecf20Sopenharmony_ci __array(char, if_type, 16) 388c2ecf20Sopenharmony_ci __array(char, if_instance, 16) 398c2ecf20Sopenharmony_ci __field(u16, chn_flags) 408c2ecf20Sopenharmony_ci __field(u16, mmio_mb) 418c2ecf20Sopenharmony_ci __field(u16, sub_idx) 428c2ecf20Sopenharmony_ci ), 438c2ecf20Sopenharmony_ci TP_fast_assign(__entry->child_relid = offer->child_relid; 448c2ecf20Sopenharmony_ci __entry->monitorid = offer->monitorid; 458c2ecf20Sopenharmony_ci __entry->is_ddc_int = offer->is_dedicated_interrupt; 468c2ecf20Sopenharmony_ci __entry->connection_id = offer->connection_id; 478c2ecf20Sopenharmony_ci export_guid(__entry->if_type, &offer->offer.if_type); 488c2ecf20Sopenharmony_ci export_guid(__entry->if_instance, &offer->offer.if_instance); 498c2ecf20Sopenharmony_ci __entry->chn_flags = offer->offer.chn_flags; 508c2ecf20Sopenharmony_ci __entry->mmio_mb = offer->offer.mmio_megabytes; 518c2ecf20Sopenharmony_ci __entry->sub_idx = offer->offer.sub_channel_index; 528c2ecf20Sopenharmony_ci ), 538c2ecf20Sopenharmony_ci TP_printk("child_relid 0x%x, monitorid 0x%x, is_dedicated %d, " 548c2ecf20Sopenharmony_ci "connection_id 0x%x, if_type %pUl, if_instance %pUl, " 558c2ecf20Sopenharmony_ci "chn_flags 0x%x, mmio_megabytes %d, sub_channel_index %d", 568c2ecf20Sopenharmony_ci __entry->child_relid, __entry->monitorid, 578c2ecf20Sopenharmony_ci __entry->is_ddc_int, __entry->connection_id, 588c2ecf20Sopenharmony_ci __entry->if_type, __entry->if_instance, 598c2ecf20Sopenharmony_ci __entry->chn_flags, __entry->mmio_mb, 608c2ecf20Sopenharmony_ci __entry->sub_idx 618c2ecf20Sopenharmony_ci ) 628c2ecf20Sopenharmony_ci ); 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_onoffer_rescind, 658c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_rescind_offer *offer), 668c2ecf20Sopenharmony_ci TP_ARGS(offer), 678c2ecf20Sopenharmony_ci TP_STRUCT__entry(__field(u32, child_relid)), 688c2ecf20Sopenharmony_ci TP_fast_assign(__entry->child_relid = offer->child_relid), 698c2ecf20Sopenharmony_ci TP_printk("child_relid 0x%x", __entry->child_relid) 708c2ecf20Sopenharmony_ci ); 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_onopen_result, 738c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_open_result *result), 748c2ecf20Sopenharmony_ci TP_ARGS(result), 758c2ecf20Sopenharmony_ci TP_STRUCT__entry( 768c2ecf20Sopenharmony_ci __field(u32, child_relid) 778c2ecf20Sopenharmony_ci __field(u32, openid) 788c2ecf20Sopenharmony_ci __field(u32, status) 798c2ecf20Sopenharmony_ci ), 808c2ecf20Sopenharmony_ci TP_fast_assign(__entry->child_relid = result->child_relid; 818c2ecf20Sopenharmony_ci __entry->openid = result->openid; 828c2ecf20Sopenharmony_ci __entry->status = result->status; 838c2ecf20Sopenharmony_ci ), 848c2ecf20Sopenharmony_ci TP_printk("child_relid 0x%x, openid %d, status %d", 858c2ecf20Sopenharmony_ci __entry->child_relid, __entry->openid, __entry->status 868c2ecf20Sopenharmony_ci ) 878c2ecf20Sopenharmony_ci ); 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_ongpadl_created, 908c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_gpadl_created *gpadlcreated), 918c2ecf20Sopenharmony_ci TP_ARGS(gpadlcreated), 928c2ecf20Sopenharmony_ci TP_STRUCT__entry( 938c2ecf20Sopenharmony_ci __field(u32, child_relid) 948c2ecf20Sopenharmony_ci __field(u32, gpadl) 958c2ecf20Sopenharmony_ci __field(u32, status) 968c2ecf20Sopenharmony_ci ), 978c2ecf20Sopenharmony_ci TP_fast_assign(__entry->child_relid = gpadlcreated->child_relid; 988c2ecf20Sopenharmony_ci __entry->gpadl = gpadlcreated->gpadl; 998c2ecf20Sopenharmony_ci __entry->status = gpadlcreated->creation_status; 1008c2ecf20Sopenharmony_ci ), 1018c2ecf20Sopenharmony_ci TP_printk("child_relid 0x%x, gpadl 0x%x, creation_status %d", 1028c2ecf20Sopenharmony_ci __entry->child_relid, __entry->gpadl, __entry->status 1038c2ecf20Sopenharmony_ci ) 1048c2ecf20Sopenharmony_ci ); 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_ongpadl_torndown, 1078c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_gpadl_torndown *gpadltorndown), 1088c2ecf20Sopenharmony_ci TP_ARGS(gpadltorndown), 1098c2ecf20Sopenharmony_ci TP_STRUCT__entry(__field(u32, gpadl)), 1108c2ecf20Sopenharmony_ci TP_fast_assign(__entry->gpadl = gpadltorndown->gpadl), 1118c2ecf20Sopenharmony_ci TP_printk("gpadl 0x%x", __entry->gpadl) 1128c2ecf20Sopenharmony_ci ); 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_onversion_response, 1158c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_version_response *response), 1168c2ecf20Sopenharmony_ci TP_ARGS(response), 1178c2ecf20Sopenharmony_ci TP_STRUCT__entry( 1188c2ecf20Sopenharmony_ci __field(u8, ver) 1198c2ecf20Sopenharmony_ci ), 1208c2ecf20Sopenharmony_ci TP_fast_assign(__entry->ver = response->version_supported; 1218c2ecf20Sopenharmony_ci ), 1228c2ecf20Sopenharmony_ci TP_printk("version_supported %d", __entry->ver) 1238c2ecf20Sopenharmony_ci ); 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_request_offers, 1268c2ecf20Sopenharmony_ci TP_PROTO(int ret), 1278c2ecf20Sopenharmony_ci TP_ARGS(ret), 1288c2ecf20Sopenharmony_ci TP_STRUCT__entry(__field(int, ret)), 1298c2ecf20Sopenharmony_ci TP_fast_assign(__entry->ret = ret), 1308c2ecf20Sopenharmony_ci TP_printk("sending ret %d", __entry->ret) 1318c2ecf20Sopenharmony_ci ); 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_open, 1348c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_open_channel *msg, int ret), 1358c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 1368c2ecf20Sopenharmony_ci TP_STRUCT__entry( 1378c2ecf20Sopenharmony_ci __field(u32, child_relid) 1388c2ecf20Sopenharmony_ci __field(u32, openid) 1398c2ecf20Sopenharmony_ci __field(u32, gpadlhandle) 1408c2ecf20Sopenharmony_ci __field(u32, target_vp) 1418c2ecf20Sopenharmony_ci __field(u32, offset) 1428c2ecf20Sopenharmony_ci __field(int, ret) 1438c2ecf20Sopenharmony_ci ), 1448c2ecf20Sopenharmony_ci TP_fast_assign( 1458c2ecf20Sopenharmony_ci __entry->child_relid = msg->child_relid; 1468c2ecf20Sopenharmony_ci __entry->openid = msg->openid; 1478c2ecf20Sopenharmony_ci __entry->gpadlhandle = msg->ringbuffer_gpadlhandle; 1488c2ecf20Sopenharmony_ci __entry->target_vp = msg->target_vp; 1498c2ecf20Sopenharmony_ci __entry->offset = msg->downstream_ringbuffer_pageoffset; 1508c2ecf20Sopenharmony_ci __entry->ret = ret; 1518c2ecf20Sopenharmony_ci ), 1528c2ecf20Sopenharmony_ci TP_printk("sending child_relid 0x%x, openid %d, " 1538c2ecf20Sopenharmony_ci "gpadlhandle 0x%x, target_vp 0x%x, offset 0x%x, ret %d", 1548c2ecf20Sopenharmony_ci __entry->child_relid, __entry->openid, 1558c2ecf20Sopenharmony_ci __entry->gpadlhandle, __entry->target_vp, 1568c2ecf20Sopenharmony_ci __entry->offset, __entry->ret 1578c2ecf20Sopenharmony_ci ) 1588c2ecf20Sopenharmony_ci ); 1598c2ecf20Sopenharmony_ci 1608c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_close_internal, 1618c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_close_channel *msg, int ret), 1628c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 1638c2ecf20Sopenharmony_ci TP_STRUCT__entry( 1648c2ecf20Sopenharmony_ci __field(u32, child_relid) 1658c2ecf20Sopenharmony_ci __field(int, ret) 1668c2ecf20Sopenharmony_ci ), 1678c2ecf20Sopenharmony_ci TP_fast_assign( 1688c2ecf20Sopenharmony_ci __entry->child_relid = msg->child_relid; 1698c2ecf20Sopenharmony_ci __entry->ret = ret; 1708c2ecf20Sopenharmony_ci ), 1718c2ecf20Sopenharmony_ci TP_printk("sending child_relid 0x%x, ret %d", __entry->child_relid, 1728c2ecf20Sopenharmony_ci __entry->ret) 1738c2ecf20Sopenharmony_ci ); 1748c2ecf20Sopenharmony_ci 1758c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_establish_gpadl_header, 1768c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_gpadl_header *msg, int ret), 1778c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 1788c2ecf20Sopenharmony_ci TP_STRUCT__entry( 1798c2ecf20Sopenharmony_ci __field(u32, child_relid) 1808c2ecf20Sopenharmony_ci __field(u32, gpadl) 1818c2ecf20Sopenharmony_ci __field(u16, range_buflen) 1828c2ecf20Sopenharmony_ci __field(u16, rangecount) 1838c2ecf20Sopenharmony_ci __field(int, ret) 1848c2ecf20Sopenharmony_ci ), 1858c2ecf20Sopenharmony_ci TP_fast_assign( 1868c2ecf20Sopenharmony_ci __entry->child_relid = msg->child_relid; 1878c2ecf20Sopenharmony_ci __entry->gpadl = msg->gpadl; 1888c2ecf20Sopenharmony_ci __entry->range_buflen = msg->range_buflen; 1898c2ecf20Sopenharmony_ci __entry->rangecount = msg->rangecount; 1908c2ecf20Sopenharmony_ci __entry->ret = ret; 1918c2ecf20Sopenharmony_ci ), 1928c2ecf20Sopenharmony_ci TP_printk("sending child_relid 0x%x, gpadl 0x%x, range_buflen %d " 1938c2ecf20Sopenharmony_ci "rangecount %d, ret %d", 1948c2ecf20Sopenharmony_ci __entry->child_relid, __entry->gpadl, 1958c2ecf20Sopenharmony_ci __entry->range_buflen, __entry->rangecount, __entry->ret 1968c2ecf20Sopenharmony_ci ) 1978c2ecf20Sopenharmony_ci ); 1988c2ecf20Sopenharmony_ci 1998c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_establish_gpadl_body, 2008c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_gpadl_body *msg, int ret), 2018c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 2028c2ecf20Sopenharmony_ci TP_STRUCT__entry( 2038c2ecf20Sopenharmony_ci __field(u32, msgnumber) 2048c2ecf20Sopenharmony_ci __field(u32, gpadl) 2058c2ecf20Sopenharmony_ci __field(int, ret) 2068c2ecf20Sopenharmony_ci ), 2078c2ecf20Sopenharmony_ci TP_fast_assign( 2088c2ecf20Sopenharmony_ci __entry->msgnumber = msg->msgnumber; 2098c2ecf20Sopenharmony_ci __entry->gpadl = msg->gpadl; 2108c2ecf20Sopenharmony_ci __entry->ret = ret; 2118c2ecf20Sopenharmony_ci ), 2128c2ecf20Sopenharmony_ci TP_printk("sending msgnumber %d, gpadl 0x%x, ret %d", 2138c2ecf20Sopenharmony_ci __entry->msgnumber, __entry->gpadl, __entry->ret 2148c2ecf20Sopenharmony_ci ) 2158c2ecf20Sopenharmony_ci ); 2168c2ecf20Sopenharmony_ci 2178c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_teardown_gpadl, 2188c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_gpadl_teardown *msg, int ret), 2198c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 2208c2ecf20Sopenharmony_ci TP_STRUCT__entry( 2218c2ecf20Sopenharmony_ci __field(u32, child_relid) 2228c2ecf20Sopenharmony_ci __field(u32, gpadl) 2238c2ecf20Sopenharmony_ci __field(int, ret) 2248c2ecf20Sopenharmony_ci ), 2258c2ecf20Sopenharmony_ci TP_fast_assign( 2268c2ecf20Sopenharmony_ci __entry->child_relid = msg->child_relid; 2278c2ecf20Sopenharmony_ci __entry->gpadl = msg->gpadl; 2288c2ecf20Sopenharmony_ci __entry->ret = ret; 2298c2ecf20Sopenharmony_ci ), 2308c2ecf20Sopenharmony_ci TP_printk("sending child_relid 0x%x, gpadl 0x%x, ret %d", 2318c2ecf20Sopenharmony_ci __entry->child_relid, __entry->gpadl, __entry->ret 2328c2ecf20Sopenharmony_ci ) 2338c2ecf20Sopenharmony_ci ); 2348c2ecf20Sopenharmony_ci 2358c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_negotiate_version, 2368c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_initiate_contact *msg, int ret), 2378c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 2388c2ecf20Sopenharmony_ci TP_STRUCT__entry( 2398c2ecf20Sopenharmony_ci __field(u32, ver) 2408c2ecf20Sopenharmony_ci __field(u32, target_vcpu) 2418c2ecf20Sopenharmony_ci __field(int, ret) 2428c2ecf20Sopenharmony_ci __field(u64, int_page) 2438c2ecf20Sopenharmony_ci __field(u64, mon_page1) 2448c2ecf20Sopenharmony_ci __field(u64, mon_page2) 2458c2ecf20Sopenharmony_ci ), 2468c2ecf20Sopenharmony_ci TP_fast_assign( 2478c2ecf20Sopenharmony_ci __entry->ver = msg->vmbus_version_requested; 2488c2ecf20Sopenharmony_ci __entry->target_vcpu = msg->target_vcpu; 2498c2ecf20Sopenharmony_ci __entry->int_page = msg->interrupt_page; 2508c2ecf20Sopenharmony_ci __entry->mon_page1 = msg->monitor_page1; 2518c2ecf20Sopenharmony_ci __entry->mon_page2 = msg->monitor_page2; 2528c2ecf20Sopenharmony_ci __entry->ret = ret; 2538c2ecf20Sopenharmony_ci ), 2548c2ecf20Sopenharmony_ci TP_printk("sending vmbus_version_requested %d, target_vcpu 0x%x, " 2558c2ecf20Sopenharmony_ci "pages %llx:%llx:%llx, ret %d", 2568c2ecf20Sopenharmony_ci __entry->ver, __entry->target_vcpu, __entry->int_page, 2578c2ecf20Sopenharmony_ci __entry->mon_page1, __entry->mon_page2, __entry->ret 2588c2ecf20Sopenharmony_ci ) 2598c2ecf20Sopenharmony_ci ); 2608c2ecf20Sopenharmony_ci 2618c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_release_relid, 2628c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_relid_released *msg, int ret), 2638c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 2648c2ecf20Sopenharmony_ci TP_STRUCT__entry( 2658c2ecf20Sopenharmony_ci __field(u32, child_relid) 2668c2ecf20Sopenharmony_ci __field(int, ret) 2678c2ecf20Sopenharmony_ci ), 2688c2ecf20Sopenharmony_ci TP_fast_assign( 2698c2ecf20Sopenharmony_ci __entry->child_relid = msg->child_relid; 2708c2ecf20Sopenharmony_ci __entry->ret = ret; 2718c2ecf20Sopenharmony_ci ), 2728c2ecf20Sopenharmony_ci TP_printk("sending child_relid 0x%x, ret %d", 2738c2ecf20Sopenharmony_ci __entry->child_relid, __entry->ret 2748c2ecf20Sopenharmony_ci ) 2758c2ecf20Sopenharmony_ci ); 2768c2ecf20Sopenharmony_ci 2778c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_send_tl_connect_request, 2788c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_tl_connect_request *msg, 2798c2ecf20Sopenharmony_ci int ret), 2808c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 2818c2ecf20Sopenharmony_ci TP_STRUCT__entry( 2828c2ecf20Sopenharmony_ci __array(char, guest_id, 16) 2838c2ecf20Sopenharmony_ci __array(char, host_id, 16) 2848c2ecf20Sopenharmony_ci __field(int, ret) 2858c2ecf20Sopenharmony_ci ), 2868c2ecf20Sopenharmony_ci TP_fast_assign( 2878c2ecf20Sopenharmony_ci export_guid(__entry->guest_id, &msg->guest_endpoint_id); 2888c2ecf20Sopenharmony_ci export_guid(__entry->host_id, &msg->host_service_id); 2898c2ecf20Sopenharmony_ci __entry->ret = ret; 2908c2ecf20Sopenharmony_ci ), 2918c2ecf20Sopenharmony_ci TP_printk("sending guest_endpoint_id %pUl, host_service_id %pUl, " 2928c2ecf20Sopenharmony_ci "ret %d", 2938c2ecf20Sopenharmony_ci __entry->guest_id, __entry->host_id, __entry->ret 2948c2ecf20Sopenharmony_ci ) 2958c2ecf20Sopenharmony_ci ); 2968c2ecf20Sopenharmony_ci 2978c2ecf20Sopenharmony_ciTRACE_EVENT(vmbus_send_modifychannel, 2988c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel_modifychannel *msg, 2998c2ecf20Sopenharmony_ci int ret), 3008c2ecf20Sopenharmony_ci TP_ARGS(msg, ret), 3018c2ecf20Sopenharmony_ci TP_STRUCT__entry( 3028c2ecf20Sopenharmony_ci __field(u32, child_relid) 3038c2ecf20Sopenharmony_ci __field(u32, target_vp) 3048c2ecf20Sopenharmony_ci __field(int, ret) 3058c2ecf20Sopenharmony_ci ), 3068c2ecf20Sopenharmony_ci TP_fast_assign( 3078c2ecf20Sopenharmony_ci __entry->child_relid = msg->child_relid; 3088c2ecf20Sopenharmony_ci __entry->target_vp = msg->target_vp; 3098c2ecf20Sopenharmony_ci __entry->ret = ret; 3108c2ecf20Sopenharmony_ci ), 3118c2ecf20Sopenharmony_ci TP_printk("binding child_relid 0x%x to target_vp 0x%x, ret %d", 3128c2ecf20Sopenharmony_ci __entry->child_relid, __entry->target_vp, __entry->ret 3138c2ecf20Sopenharmony_ci ) 3148c2ecf20Sopenharmony_ci ); 3158c2ecf20Sopenharmony_ci 3168c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(vmbus_channel, 3178c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel *channel), 3188c2ecf20Sopenharmony_ci TP_ARGS(channel), 3198c2ecf20Sopenharmony_ci TP_STRUCT__entry(__field(u32, relid)), 3208c2ecf20Sopenharmony_ci TP_fast_assign(__entry->relid = channel->offermsg.child_relid), 3218c2ecf20Sopenharmony_ci TP_printk("relid 0x%x", __entry->relid) 3228c2ecf20Sopenharmony_ci); 3238c2ecf20Sopenharmony_ci 3248c2ecf20Sopenharmony_ciDEFINE_EVENT(vmbus_channel, vmbus_chan_sched, 3258c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel *channel), 3268c2ecf20Sopenharmony_ci TP_ARGS(channel) 3278c2ecf20Sopenharmony_ci); 3288c2ecf20Sopenharmony_ci 3298c2ecf20Sopenharmony_ciDEFINE_EVENT(vmbus_channel, vmbus_setevent, 3308c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel *channel), 3318c2ecf20Sopenharmony_ci TP_ARGS(channel) 3328c2ecf20Sopenharmony_ci); 3338c2ecf20Sopenharmony_ci 3348c2ecf20Sopenharmony_ciDEFINE_EVENT(vmbus_channel, vmbus_on_event, 3358c2ecf20Sopenharmony_ci TP_PROTO(const struct vmbus_channel *channel), 3368c2ecf20Sopenharmony_ci TP_ARGS(channel) 3378c2ecf20Sopenharmony_ci); 3388c2ecf20Sopenharmony_ci 3398c2ecf20Sopenharmony_ci#undef TRACE_INCLUDE_PATH 3408c2ecf20Sopenharmony_ci#define TRACE_INCLUDE_PATH . 3418c2ecf20Sopenharmony_ci#undef TRACE_INCLUDE_FILE 3428c2ecf20Sopenharmony_ci#define TRACE_INCLUDE_FILE hv_trace 3438c2ecf20Sopenharmony_ci#endif /* _HV_TRACE_H */ 3448c2ecf20Sopenharmony_ci 3458c2ecf20Sopenharmony_ci/* This part must be outside protection */ 3468c2ecf20Sopenharmony_ci#include <trace/define_trace.h> 347