linux/drivers/usb/serial
Sunho Park faaddd811c USB: serial: io_edgeport: cap received transmit credits
The interrupt-status packet reports transmit credits returned by the
device. edge_interrupt_callback() adds the 16-bit value to txCredits
without checking maxTxCredits.

edge_write() uses txCredits minus the software FIFO count as the amount
of data that fits. Since the FIFO is allocated with maxTxCredits bytes,
txCredits exceeding maxTxCredits can cause OOB write in ring buffer.

Cap accumulated credits at maxTxCredits. Conforming devices should never
hit the cap.

Fixes: 1da177e4c3 ("Linux-2.6.12-rc2")
Cc: stable@vger.kernel.org
Assisted-by: Codex:GPT-5
Signed-off-by: Sunho Park <shpark061104@gmail.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
2026-07-22 11:23:54 +02:00
..
aircable.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
ark3116.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
belkin_sa.c USB serial updates for 7.2-rc1 2026-06-12 18:01:39 +02:00
belkin_sa.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
bus.c USB: serial: bus: fix const issue in usb_serial_device_match() 2025-05-21 17:01:37 +02:00
ch341.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
console.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
cp210x.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
cyberjack.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
cypress_m8.c USB serial updates for 7.2-rc1 2026-06-12 18:01:39 +02:00
cypress_m8.h USB: serial: cypress_m8: enable Simply Automated UPB PIM 2020-06-23 09:56:17 +02:00
digi_acceleport.c USB: serial: digi_acceleport: fix broken rx after throttle 2026-06-29 11:40:34 +02:00
empeg.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
ezusb_convert.pl
f81232.c USB: serial: drop unused moduleparam includes 2026-05-11 09:34:13 +02:00
f81534.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
ftdi_sio_ids.h USB: serial: ftdi_sio: add support for E+H FXA291 2026-07-13 11:43:39 +02:00
ftdi_sio.c USB: serial: ftdi_sio: add support for E+H FXA291 2026-07-13 11:43:39 +02:00
ftdi_sio.h USB: serial: ftdi_sio: rename channel index 2022-09-15 08:05:53 +02:00
garmin_gps.c USB: serial: garmin_gps: drop unused atomic include 2026-05-11 09:34:17 +02:00
generic.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
io_16654.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
io_edgeport.c USB: serial: io_edgeport: cap received transmit credits 2026-07-22 11:23:54 +02:00
io_edgeport.h USB: serial: io_edgeport: drop unused definitions 2021-04-08 09:50:04 +02:00
io_ionsp.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
io_ti.c USB: serial: io_ti: reject oversized boot-mode firmware 2026-07-20 16:35:40 +02:00
io_ti.h USB: serial: io_ti: drop unnecessary packed attributes 2021-04-13 18:23:34 +02:00
io_usbvend.h USB: serial: io_edgeport: add support for Blackbox IC135A 2026-03-17 15:28:14 +01:00
ipaq.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
ipw.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
ir-usb.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
iuu_phoenix.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
iuu_phoenix.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
Kconfig USB: serial: simple: add Nokia phone driver 2022-03-03 09:27:36 +01:00
keyspan_pda.c USB: serial: keyspan_pda: fix data loss on receive throttling 2026-07-13 11:32:52 +02:00
keyspan_usa26msg.h
keyspan_usa28msg.h
keyspan_usa49msg.h
keyspan_usa67msg.h
keyspan_usa90msg.h
keyspan.c USB serial updates for 7.2-rc1 2026-06-12 18:01:39 +02:00
kl5kusb105.c USB/Thunderbolt driver changes for 7.2-rc1 2026-06-22 12:09:47 -07:00
kl5kusb105.h
kobil_sct.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
kobil_sct.h
Makefile USB: serial: add MaxLinear/Exar USB to Serial driver 2021-01-21 10:49:37 +01:00
Makefile-keyspan_pda_fw
mct_u232.c USB serial updates for 7.2-rc1 2026-06-12 18:01:39 +02:00
mct_u232.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
metro-usb.c USB: serial: drop unused moduleparam includes 2026-05-11 09:34:13 +02:00
mos7720.c USB: serial: add missing atomic includes 2026-05-11 09:34:21 +02:00
mos7840.c USB: serial: drop unused tty_driver includes 2026-05-11 09:33:40 +02:00
mxuport.c USB: serial: mxuport: validate firmware header size 2026-07-20 16:24:04 +02:00
navman.c USB: serial: drop driver owner initialization 2024-08-26 15:28:25 +02:00
omninet.c USB serial updates for 7.2-rc1 2026-06-12 18:01:39 +02:00
opticon.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
option.c USB: serial: option: add TDTECH MT5710-CN 2026-07-21 14:53:40 +02:00
oti6858.c USB: serial: drop unused moduleparam includes 2026-05-11 09:34:13 +02:00
oti6858.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
pl2303.c USB: serial: drop unused moduleparam includes 2026-05-11 09:34:13 +02:00
pl2303.h USB: serial: pl2303: add device id for Macrosilicon MS3020 2024-09-06 17:11:13 +02:00
qcaux.c USB: serial: drop driver owner initialization 2024-08-26 15:28:25 +02:00
qcserial.c USB: serial: drop unused tty_flip includes 2026-05-11 09:33:59 +02:00
quatech2.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
safe_serial.c USB serial updates for 7.2-rc1 2026-06-12 18:01:39 +02:00
sierra.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
spcp8x5.c USB: serial: drop unused tty_flip includes 2026-05-11 09:33:59 +02:00
ssu100.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
symbolserial.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
ti_usb_3410_5052.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
upd78f0730.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
usb_debug.c USB: serial: drop driver owner initialization 2024-08-26 15:28:25 +02:00
usb_wwan.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
usb-serial-simple.c USB: serial: simple: add OWON HDS200 series oscilloscope support 2025-04-16 08:38:22 +02:00
usb-serial.c USB: serial: drop unused moduleparam includes 2026-05-11 09:34:13 +02:00
usb-wwan.h USB: serial: make usb_serial_driver::chars_in_buffer return uint 2021-05-19 10:56:41 +02:00
visor.c USB: serial: drop unused moduleparam includes 2026-05-11 09:34:13 +02:00
visor.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
whiteheat.c USB: serial: whiteheat: drop termbits include 2026-05-11 09:34:25 +02:00
whiteheat.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
wishbone-serial.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00
xr_serial.c USB: serial: xr: add missing uaccess include 2026-05-11 09:34:04 +02:00
xsens_mt.c USB: serial: drop unused uaccess includes 2026-05-11 09:34:08 +02:00