diff mbox series

ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format

Message ID 20200503045718.86337-1-o-takashi@sakamocchi.jp (mailing list archive)
State New, archived
Headers show
Series ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format | expand

Commit Message

Takashi Sakamoto May 3, 2020, 4:57 a.m. UTC
The snd-firewire-lib.ko has 'amdtp-packet' event of tracepoints. Current
printk format for the event includes 'sizeof(u8)' macro expected to be
extended in compilation time. However, this is not done. As a result,
perf tools cannot parse the event for printing:

$ mount -l -t debugfs
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
$ cat /sys/kernel/debug/tracing/events/snd_firewire_lib/amdtp_packet/format
...
print fmt: "%02u %04u %04x %04x %02d %03u %02u %03u %02u %01u %02u %s",
  REC->second, REC->cycle, REC->src, REC->dest, REC->channel,
  REC->payload_quadlets, REC->data_blocks, REC->data_block_counter,
  REC->packet_index, REC->irq, REC->index,
  __print_array(__get_dynamic_array(cip_header),
                __get_dynamic_array_len(cip_header),
                sizeof(u8))

$ sudo perf record -e snd_firewire_lib:amdtp_packet
  [snd_firewire_lib:amdtp_packet] function sizeof not defined
  Error: expected type 5 but read 0

This commit fixes it by obsoleting the macro with actual size.

Cc: <stable@vger.kernel.org>
Fixes: bde2bbdb307a: ("ALSA: firewire-lib: use dynamic array for CIP header of tracing events")
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
---
 sound/firewire/amdtp-stream-trace.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Takashi Iwai May 3, 2020, 7:25 a.m. UTC | #1
On Sun, 03 May 2020 06:57:18 +0200,
Takashi Sakamoto wrote:
> 
> The snd-firewire-lib.ko has 'amdtp-packet' event of tracepoints. Current
> printk format for the event includes 'sizeof(u8)' macro expected to be
> extended in compilation time. However, this is not done. As a result,
> perf tools cannot parse the event for printing:
> 
> $ mount -l -t debugfs
> debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
> $ cat /sys/kernel/debug/tracing/events/snd_firewire_lib/amdtp_packet/format
> ...
> print fmt: "%02u %04u %04x %04x %02d %03u %02u %03u %02u %01u %02u %s",
>   REC->second, REC->cycle, REC->src, REC->dest, REC->channel,
>   REC->payload_quadlets, REC->data_blocks, REC->data_block_counter,
>   REC->packet_index, REC->irq, REC->index,
>   __print_array(__get_dynamic_array(cip_header),
>                 __get_dynamic_array_len(cip_header),
>                 sizeof(u8))
> 
> $ sudo perf record -e snd_firewire_lib:amdtp_packet
>   [snd_firewire_lib:amdtp_packet] function sizeof not defined
>   Error: expected type 5 but read 0
> 
> This commit fixes it by obsoleting the macro with actual size.
> 
> Cc: <stable@vger.kernel.org>
> Fixes: bde2bbdb307a: ("ALSA: firewire-lib: use dynamic array for CIP header of tracing events")
> Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>

Applied now with a correction of Fixes tag (removal of the superfluous
colon after commit id).


thanks,

Takashi
diff mbox series

Patch

diff --git a/sound/firewire/amdtp-stream-trace.h b/sound/firewire/amdtp-stream-trace.h
index 16c7f6605511..26e7cb555d3c 100644
--- a/sound/firewire/amdtp-stream-trace.h
+++ b/sound/firewire/amdtp-stream-trace.h
@@ -66,8 +66,7 @@  TRACE_EVENT(amdtp_packet,
 		__entry->irq,
 		__entry->index,
 		__print_array(__get_dynamic_array(cip_header),
-			      __get_dynamic_array_len(cip_header),
-			      sizeof(u8)))
+			      __get_dynamic_array_len(cip_header), 1))
 );
 
 #endif