Re: [PATCH 5/5] firewire: ohci: add tracepoints event for data of Self-ID DMA

From: Takashi Sakamoto
Date: Wed Jul 03 2024 - 20:07:19 EST


Hi,

On Wed, Jul 03, 2024 at 07:20:34AM +0900, Takashi Sakamoto wrote:
> In 1394 OHCI, the SelfIDComplete event occurs when the hardware has
> finished transmitting all of the self ID packets received during the bus
> initialization process to the host memory by DMA.
>
> This commit adds a tracepoints event for this event to trace the timing
> and packet data of Self-ID DMA. It is the part of following tracepoints
> events helpful to debug some events at bus reset; e.g. the issue addressed
> at a commit d0b06dc48fb1 ("firewire: core: use long bus reset on gap count
> error")[1]:
>
> * firewire_ohci:irqs
> * firewire_ohci:self_id_complete
> * firewire:bus_reset_handle
> * firewire:self_id_sequence
>
> They would be also helpful in the problem about invocation timing of
> hardIRQ/softIRQ contexts. We can often see this kind of problem with -rt
> kernel[2].

Oops, I misunderstood. The handling of Self-ID DMA buffer is in hardIRQ
and process (workqueue) contexts, thus the above issue is not the
invocation timing of hardIRQ/softIRQ contexts. Let me correct it at the
applied commit comment.

> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d0b06dc48fb1
> [2] https://lore.kernel.org/linux-rt-users/YAwPoaUZ1gTD5y+k@hmbx/
>
> Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx>
> ---
> drivers/firewire/ohci.c | 11 +++++-
> include/trace/events/firewire_ohci.h | 54 ++++++++++++++++++++++++++++
> 2 files changed, 64 insertions(+), 1 deletion(-)


Regards

Takashi Sakamoto