[alsa-devel] [PATCH v2] MIDI driver for Behringer BCD2000 USB device
Daniel Mack
daniel at zonque.org
Thu Feb 6 17:16:41 CET 2014
On 02/06/2014 05:07 PM, Mario Kicherer wrote:
> On 05.02.2014 23:32, Daniel Mack wrote:
>> ERROR: DOS line endings
>>
>> Did you send the patch using git send-email?
>
> Yes, I only get the two warnings as Takashi. I also moved the
> strings in one line as he suggested.
As Takashi pointed out, that might be my bad. I'm puzzled though, as I
didn't change my procedure.
>> You could add something like this:
>>
>> #ifdef CONFIG_SND_DEBUG
>> static void bcd2000_midi_hex_dump(const char *prefix,
>> const unsigned char *buf, int len)
>> {
>> print_hex_dump(KERN_DEBUG, prefix,
>> DUMP_PREFIX_NONE, 16, 1, buf, len, false);
>> }
>> #else
>> static inline void bcd2000_midi_hex_dump(const char *prefix,
>> const unsigned char *buf, int len) {}
>> #endif
>>
>> And then just call the function from various places. That would safe you
>> the module parameter, the condition check, and an indentation level.
>
> Hm, I removed the CONFIG_ part as the module parameter would allow
> me and possible users to debug things spontaneously. But I can use our
> approach if you think it would be better nonetheless?
I think so. Less debug conditionals in the code usually result in better
readability. But it's a nit really.
>>> + /* safety check */
>>> + if (bcd2k->midi_cmd_offset + tocopy < BUFSIZE &&
>>> + buf_offset + tocopy < len) {
>>> + memcpy(&bcd2k->midi_cmd_buf[bcd2k->midi_cmd_offset],
>>> + &buf[buf_offset], tocopy);
>>> + } else {
>>> + snd_printk(KERN_ERR PREFIX "access violation in %s\n",
>>> + __func__);
>>
>> You want to drop the entire packet here, right?
>
> Hm, I'm not sure. A "return" after the snd_printk would do, right?
Yes, that should do.
Daniel
More information about the Alsa-devel
mailing list