kernel/sound/usb/line6/midi.c
.. .. @@ -44,7 +44,8 @@ 44 44 int req, done; 45 45 46 46 for (;;) { 47 - req = min(line6_midibuf_bytes_free(mb), line6->max_packet_size);47 + req = min3(line6_midibuf_bytes_free(mb), line6->max_packet_size,48 + LINE6_FALLBACK_MAXPACKETSIZE);48 49 done = snd_rawmidi_transmit_peek(substream, chunk, req); 49 50 50 51 if (done == 0) .. .. @@ -56,7 +57,8 @@ 56 57 57 58 for (;;) { 58 59 done = line6_midibuf_read(mb, chunk, 59 - LINE6_FALLBACK_MAXPACKETSIZE);60 + LINE6_FALLBACK_MAXPACKETSIZE,61 + LINE6_MIDIBUF_READ_TX);60 62 61 63 if (done == 0) 62 64 break;