mirror of
https://github.com/torvalds/linux.git
synced 2026-01-12 00:42:35 +08:00
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: syzbot+c3dbc239259940ededba@syzkaller.appspotmail.com Link: https://syzkaller.appspot.com/bug?extid=c3dbc239259940ededba Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user