From d67d527eaae1fb50bc43450b703566bdfa15ca34 Mon Sep 17 00:00:00 2001 From: Takashi Sakamoto Date: Sun, 7 Jul 2019 21:07:56 +0900 Subject: [PATCH] ALSA: firewire-lib: fix different data block counter between probed event and transferred isochronous packet For IT context, tracepoints event is probed after calculating next data block counter. This brings difference of data block counter between the probed event and actual isochronous packet. This commit fixes it. Signed-off-by: Takashi Sakamoto Signed-off-by: Takashi Iwai --- sound/firewire/amdtp-stream.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sound/firewire/amdtp-stream.c b/sound/firewire/amdtp-stream.c index 3d410057eaa48..9259375caac44 100644 --- a/sound/firewire/amdtp-stream.c +++ b/sound/firewire/amdtp-stream.c @@ -510,13 +510,13 @@ static void build_it_pkt_header(struct amdtp_stream *s, unsigned int cycle, cip_header = NULL; } + trace_amdtp_packet(s, cycle, cip_header, payload_length, data_blocks, + index); + if (!(s->flags & CIP_DBC_IS_END_EVENT)) { s->data_block_counter = (s->data_block_counter + data_blocks) & 0xff; } - - trace_amdtp_packet(s, cycle, cip_header, payload_length, data_blocks, - index); } static int check_cip_header(struct amdtp_stream *s, const __be32 *buf, -- 2.39.5