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

firewire: core: record card index in async_phy_inbound tracepoints event

The asynchronous transmission of phy packet is initiated on one of 1394
OHCI controller, however the existing tracepoints events has the lack of
data about it.

This commit adds card_index member into event structure to store the index
of host controller in use, and prints it.

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

+6 -4
+1 -1
drivers/firewire/core-transaction.c
··· 997 997 998 998 tcode = async_header_get_tcode(p->header); 999 999 if (tcode_is_link_internal(tcode)) { 1000 - trace_async_phy_inbound((uintptr_t)p, p->generation, p->ack, p->timestamp, 1000 + trace_async_phy_inbound((uintptr_t)p, card->index, p->generation, p->ack, p->timestamp, 1001 1001 p->header[1], p->header[2]); 1002 1002 fw_cdev_handle_phy_packet(card, p); 1003 1003 return;
+5 -3
include/trace/events/firewire.h
··· 271 271 ); 272 272 273 273 TRACE_EVENT(async_phy_inbound, 274 - TP_PROTO(u64 packet, unsigned int generation, unsigned int status, unsigned int timestamp, u32 first_quadlet, u32 second_quadlet), 275 - TP_ARGS(packet, generation, status, timestamp, first_quadlet, second_quadlet), 274 + TP_PROTO(u64 packet, unsigned int card_index, unsigned int generation, unsigned int status, unsigned int timestamp, u32 first_quadlet, u32 second_quadlet), 275 + TP_ARGS(packet, card_index, generation, status, timestamp, first_quadlet, second_quadlet), 276 276 TP_STRUCT__entry( 277 277 __field(u64, packet) 278 + __field(u8, card_index) 278 279 __field(u8, generation) 279 280 __field(u8, status) 280 281 __field(u16, timestamp) ··· 291 290 __entry->second_quadlet = second_quadlet 292 291 ), 293 292 TP_printk( 294 - "packet=0x%llx generation=%u status=%u timestamp=0x%04x first_quadlet=0x%08x second_quadlet=0x%08x", 293 + "packet=0x%llx card_index=%u generation=%u status=%u timestamp=0x%04x first_quadlet=0x%08x second_quadlet=0x%08x", 295 294 __entry->packet, 295 + __entry->card_index, 296 296 __entry->generation, 297 297 __entry->status, 298 298 __entry->timestamp,