mirror of
https://github.com/torvalds/linux.git
synced 2024-12-29 14:21:47 +00:00
ALSA: seq: Avoid confusion of aligned read size
Currently the read event packet size in snd_seq_read() is defined by
client->midi_version value that is guaranteed to be zero if UMP isn't
enabled. But the static analyzer doesn't know of the fact, and it
still suspects as if it were leading to a potential overflow.
Add the more explicit check of CONFIG_SND_SEQ_UMP to determine the
aligned_size value for avoiding the confusion.
Fixes: 46397622a3
("ALSA: seq: Add UMP support")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <error27@gmail.com>
Closes: https://lore.kernel.org/r/202305261415.NY0vapZK-lkp@intel.com/
Link: https://lore.kernel.org/r/20230605144758.6677-2-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
4f4e711266
commit
8c15a18331
@ -451,7 +451,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count,
|
||||
err = 0;
|
||||
snd_seq_fifo_lock(fifo);
|
||||
|
||||
if (client->midi_version > 0)
|
||||
if (IS_ENABLED(CONFIG_SND_SEQ_UMP) && client->midi_version > 0)
|
||||
aligned_size = sizeof(struct snd_seq_ump_event);
|
||||
else
|
||||
aligned_size = sizeof(struct snd_seq_event);
|
||||
|
Loading…
Reference in New Issue
Block a user