Commit 1f9fc89c authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: seq: Fix KCSAN data-race warning at snd_seq_fifo_poll_wait()



snd_seq_fifo_poll_wait() evaluates f->cells without locking after
poll_wait(), and KCSAN doesn't like it as it appears to be a
data-race.  Although this doesn't matter much in practice as the value
is volatile, it's still better to address it for the mind piece.

Wrap it with f->lock spinlock for avoiding the potential data race.

Reported-by: default avatar <syzbot+c3dbc239259940ededba@syzkaller.appspotmail.com>
Link: https://syzkaller.appspot.com/bug?extid=c3dbc239259940ededba


Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 7e18682b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -210,6 +210,7 @@ int snd_seq_fifo_poll_wait(struct snd_seq_fifo *f, struct file *file,
			   poll_table *wait)
{
	poll_wait(file, &f->input_sleep, wait);
	guard(spinlock_irq)(&f->lock);
	return (f->cells > 0);
}