Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ALSA: ump: Fix -Wformat-truncation warnings

Filling the rawmidi name and substream name can be truncated, and this
leads to spurious compiler warnings due to -Wformat-truncation.
Although the truncation is the expected behavior, it'd be better to
truncate the string within "(...)"

This patch puts the precision specifies to each %s for fitting the
words within the size-limited strings.

Fixes: 5f11dd938fe7 ("ALSA: usb-audio: Attach legacy rawmidi after probing all UMP EPs")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202308251844.1FuQYsql-lkp@intel.com/
Link: https://lore.kernel.org/r/20230826072151.23408-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>

+2 -2
+2 -2
sound/core/ump.c
··· 1157 1157 struct snd_rawmidi_substream *s; 1158 1158 1159 1159 list_for_each_entry(s, &rmidi->streams[dir].substreams, list) 1160 - snprintf(s->name, sizeof(s->name), "Group %d (%s)", 1160 + snprintf(s->name, sizeof(s->name), "Group %d (%.16s)", 1161 1161 ump->legacy_mapping[s->number] + 1, ump->info.name); 1162 1162 } 1163 1163 ··· 1191 1191 if (output) 1192 1192 snd_rawmidi_set_ops(rmidi, SNDRV_RAWMIDI_STREAM_OUTPUT, 1193 1193 &snd_ump_legacy_output_ops); 1194 - snprintf(rmidi->name, sizeof(rmidi->name), "%s (MIDI 1.0)", 1194 + snprintf(rmidi->name, sizeof(rmidi->name), "%.68s (MIDI 1.0)", 1195 1195 ump->info.name); 1196 1196 rmidi->info_flags = ump->core.info_flags & ~SNDRV_RAWMIDI_INFO_UMP; 1197 1197 rmidi->ops = &snd_ump_legacy_ops;