Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

firewire: core: add tracepoints events for setting channels of multichannel context

It is helpful to trace the channel setting for the multichannel isochronous
context when the core function is requested it by both in-kernel unit
drivers and userspace applications.

This commit adds some tracepoints events for the aim.

Link: https://lore.kernel.org/r/20240623220859.851685-3-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>

+23
+2
drivers/firewire/core-iso.c
··· 177 177 178 178 int fw_iso_context_set_channels(struct fw_iso_context *ctx, u64 *channels) 179 179 { 180 + trace_isoc_inbound_multiple_channels(ctx, *channels); 181 + 180 182 return ctx->card->driver->set_iso_channels(ctx, channels); 181 183 } 182 184
+21
include/trace/events/firewire.h
··· 541 541 TP_CONDITION(ctx->type == FW_ISO_CONTEXT_RECEIVE_MULTICHANNEL) 542 542 ); 543 543 544 + TRACE_EVENT(isoc_inbound_multiple_channels, 545 + TP_PROTO(const struct fw_iso_context *ctx, u64 channels), 546 + TP_ARGS(ctx, channels), 547 + TP_STRUCT__entry( 548 + __field(u64, context) 549 + __field(u8, card_index) 550 + __field(u64, channels) 551 + ), 552 + TP_fast_assign( 553 + __entry->context = (uintptr_t)ctx; 554 + __entry->card_index = ctx->card->index; 555 + __entry->channels = channels; 556 + ), 557 + TP_printk( 558 + "context=0x%llx card_index=%u channels=0x%016llx", 559 + __entry->context, 560 + __entry->card_index, 561 + __entry->channels 562 + ) 563 + ); 564 + 544 565 #undef QUADLET_SIZE 545 566 546 567 #endif // _FIREWIRE_TRACE_EVENT_H