[alsa-devel] [PATCH 2/5] ALSA: usb-audio: purge needless variable length array
Takashi Sakamoto
o-takashi at sakamocchi.jp
Tue Feb 21 03:23:12 CET 2017
On 2017年02月21日 06:04, Takashi Iwai wrote:
> On Mon, 20 Feb 2017 21:51:54 +0100,
> Takashi Iwai wrote:
>>
>> On Mon, 20 Feb 2017 21:09:18 +0100,
>> Takashi Sakamoto wrote:
>>>
>>> Variable length array is used in 'snd_us16x08_meter_get()', while there
>>> is logically no need. It's better to purge it because variable length array
>>> has overhead for stack handling.
>>>
>>> This commit replaces the array with static length. Sparse generated below
>>> warning.
>>>
>>> sound/usb/mixer_us16x08.c:714:18: warning: Variable length array is used.
>>>
>>> Fixes: d2bb390a2081 ("ALSA: usb-audio: Tascam US-16x08 DSP mixer quirk")
>>> Signed-off-by: Takashi Sakamoto <o-takashi at sakamocchi.jp>
>>
>> Applied, thanks.
>
> Eh, no, this patch is buggy. Scratched.
>
>> @@ -740,7 +740,8 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
>> case 3:
>> memcpy(tmp, mix_init_msg2, sizeof(mix_init_msg2));
>> tmp[2] = snd_get_meter_comp_index(store);
>> - snd_us16x08_send_urb(chip, tmp, 10);
>> + snd_us16x08_send_urb(chip, (char *)mix_init_msg2,
>> + sizeof(mix_init_msg2));
>
> Here you overlooked that tmp[2] is dynamically changed.
Oops. I've realized it during my reviewing, but forget to care when
coding, sorry...
Please abandon this patch. I post the alternative this night.
Thanks
Takashi Sakamoto
More information about the Alsa-devel
mailing list