1
0
Fork 0
alistair23-linux/sound/firewire
Geert Uytterhoeven 548e4168e6 ALSA: firewire-tascam: Fix integer overflow in midi_port_work()
commit 9f65df9c58 upstream.

As snd_fw_async_midi_port.consume_bytes is unsigned int, and
NSEC_PER_SEC is 1000000000L, the second multiplication in

    port->consume_bytes * 8 * NSEC_PER_SEC / 31250

always overflows on 32-bit platforms, truncating the result.  Fix this
by precalculating "NSEC_PER_SEC / 31250", which is an integer constant.

Note that this assumes port->consume_bytes <= 16777.

Fixes: 531f471834 ("ALSA: firewire-lib/firewire-tascam: localize async midi port")
Reviewed-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20210111130251.361335-3-geert+renesas@glider.be
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-01-19 18:26:19 +01:00
..
bebob ALSA: bebob: potential info leak in hwdep_read() 2020-10-29 09:57:25 +01:00
dice ALSA: dice: fix fallback from protocol extension into limited functionality 2020-01-23 08:22:30 +01:00
digi00x ALSA: firewire-digi00x: exclude Avid Adrenaline from detection 2020-09-09 19:12:32 +02:00
fireface ALSA: fireface: Fix integer overflow in transmit_midi_msg() 2021-01-19 18:26:18 +01:00
fireworks ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() 2020-11-24 13:29:20 +01:00
motu ALSA: firewire-motu: Correct a typo in the clock proc string 2020-01-09 10:20:01 +01:00
oxfw ALSA: oxfw: fix return value in error path of isochronous resources reservation 2019-12-17 19:56:27 +01:00
tascam ALSA: firewire-tascam: Fix integer overflow in midi_port_work() 2021-01-19 18:26:19 +01:00
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
amdtp-am824.c ALSA: firewire-lib: fix invalid assignment to union data for directional parameter 2020-06-24 17:50:25 +02:00
amdtp-am824.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
amdtp-stream-trace.h ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format 2020-05-20 08:20:19 +02:00
amdtp-stream.c ALSA: firewire-lib: remove WARN_ON() at destruction of AMDTP domain 2019-09-07 08:39:23 +02:00
amdtp-stream.h ALSA: firewire-lib: localize kernel APIs to start/stop each AMDTP stream 2019-08-05 19:57:29 +02:00
cmp.c ASoC: Updates for v5.3 2019-07-08 14:45:34 +02:00
cmp.h ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection 2019-06-17 08:18:36 +02:00
fcp.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
fcp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
isight.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
iso-resources.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
iso-resources.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lib.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 2019-06-05 17:37:08 +02:00
lib.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
packets-buffer.c ALSA: firewire: fix a memory leak bug 2019-08-08 11:12:26 +02:00
packets-buffer.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00