kernel_samsung_a53x/drivers
Gerd Bayer 270ecc4364 net/mlx5: Fix error path in multi-packet WQE transmit
[ Upstream commit 2bcae12c795f32ddfbf8c80d1b5f1d3286341c32 ]

Remove the erroneous unmap in case no DMA mapping was established

The multi-packet WQE transmit code attempts to obtain a DMA mapping for
the skb. This could fail, e.g. under memory pressure, when the IOMMU
driver just can't allocate more memory for page tables. While the code
tries to handle this in the path below the err_unmap label it erroneously
unmaps one entry from the sq's FIFO list of active mappings. Since the
current map attempt failed this unmap is removing some random DMA mapping
that might still be required. If the PCI function now presents that IOVA,
the IOMMU may assumes a rogue DMA access and e.g. on s390 puts the PCI
function in error state.

The erroneous behavior was seen in a stress-test environment that created
memory pressure.

Fixes: 5af75c747e2a ("net/mlx5e: Enhanced TX MPWQE for SKBs")
Signed-off-by: Gerd Bayer <gbayer@linux.ibm.com>
Reviewed-by: Zhu Yanjun <yanjun.zhu@linux.dev>
Acked-by: Maxim Mikityanskiy <maxtram95@gmail.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-23 23:21:35 +01:00
..
accessibility speakup: Fix sizeof() vs ARRAY_SIZE() bug 2024-11-19 12:26:51 +01:00
acpi ACPI: resource: Add another DMI match for the TongFang GMxXGxx 2024-11-23 23:21:31 +01:00
amba
android binder: fix UAF caused by offsets overwrite 2024-11-23 23:21:07 +01:00
ata ata: pata_macio: Use WARN instead of BUG 2024-11-23 23:21:06 +01:00
atm atm: idt77252: prevent use after free in dequeue_rx() 2024-11-23 23:20:43 +01:00
auxdisplay
base firmware_loader: Block path traversal 2024-11-23 23:21:30 +01:00
battery drivers: battery_v2: sec_battery: export {CURRENT/VOLTAGE}_MAX to sysfs 2024-11-17 17:43:14 +01:00
bcma
block drbd: Add NULL check for net_conf to prevent dereference in state validation 2024-11-23 23:21:31 +01:00
bluetooth Bluetooth: btusb: Fix not handling ZPL/short-transfer 2024-11-23 23:21:18 +01:00
bts
bus bus: integrator-lm: fix OF node leak in probe() 2024-11-23 23:21:30 +01:00
cdrom
char hwrng: cctrng - Add missing clk_disable_unprepare in cctrng_resume 2024-11-23 23:21:31 +01:00
clk clk: ti: dra7-atl: Fix leak of of_nodes 2024-11-23 23:21:25 +01:00
clocksource clocksource/drivers/qcom: Add missing iounmap() on errors in msm_dt_timer_init() 2024-11-23 23:21:20 +01:00
connector
counter counter: ti-eqep: enable clock at probe 2024-11-19 14:19:33 +01:00
cpufreq cpufreq: ti-cpufreq: Introduce quirks to handle syscon fails appropriately 2024-11-23 23:21:18 +01:00
cpuidle cpuidle: menu: Take negative "sleep length" values into account 2024-11-19 18:01:28 +01:00
crypto crypto: ccp - Properly unregister /dev/sev on sev PLATFORM_STATUS failure 2024-11-23 23:21:31 +01:00
dax
dca
devfreq PM / devfreq: Fix buffer overflow in trans_stat_show 2024-11-19 11:32:38 +01:00
dio
dma dmaengine: dw: Add memory bus width verification 2024-11-23 23:20:55 +01:00
dma-buf dma-buf/sync_file: Speed up ioctl by omitting debug names 2024-11-19 17:53:23 +01:00
edac EDAC, i10nm: make skx_common.o a separate module 2024-11-23 23:19:56 +01:00
eisa
extcon extcon: max8997: select IRQ_DOMAIN instead of depending on it 2024-11-19 12:27:04 +01:00
fingerprint
firewire firewire: nosy: ensure user_length is taken into account when fetching packet contents 2024-11-19 11:32:46 +01:00
firmware efistub/tpm: Use ACPI reclaim memory for event log to avoid corruption 2024-11-23 23:21:31 +01:00
fpga fpga: region: add owner module and take its refcount 2024-11-19 12:27:04 +01:00
fsi
gnss
gpio gpiolib: cdev: Ignore reconfiguration without direction 2024-11-23 23:21:16 +01:00
gpu drm/amd/display: Round calculated vtotal 2024-11-23 23:21:30 +01:00
greybus greybus: Fix use-after-free bug in gb_interface_release due to race condition. 2024-11-19 14:19:05 +01:00
gud
hid HID: cougar: fix slab-out-of-bounds Read in cougar_report_fixup 2024-11-23 23:21:06 +01:00
hsi
hv Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic 2024-11-23 23:21:07 +01:00
hwmon hwmon: (ntc_thermistor) fix module autoloading 2024-11-23 23:21:20 +01:00
hwspinlock hwspinlock: Introduce hwspin_lock_bust() 2024-11-23 23:20:58 +01:00
hwtracing coresight: tmc: sg: Do not leak sg_table 2024-11-23 23:21:28 +01:00
i2c i2c: isch: Add missed 'else' 2024-11-23 23:21:34 +01:00
i3c i3c: master: cdns: Update maximum prescaler value for i2c clock 2024-11-18 12:13:19 +01:00
ide
idle
ifconn
iio iio: adc: ad7606: fix standby gpio state to match the documentation 2024-11-23 23:21:28 +01:00
infiniband RDMA/cxgb4: Added NULL check for lookup_atid 2024-11-23 23:21:26 +01:00
input Input: i8042 - add another board name for TUXEDO Stellaris Gen5 AMD line 2024-11-23 23:21:30 +01:00
interconnect interconnect: qcom: sm8250: Enable sync_state 2024-11-23 23:21:28 +01:00
iommu iommu/vt-d: Handle volatile descriptor status read 2024-11-23 23:21:05 +01:00
ipack
irqchip irqchip/armada-370-xp: Do not allow mapping IRQ 0 and 1 2024-11-23 23:21:03 +01:00
isdn mISDN: Fix a use after free in hfcmulti_tx() 2024-11-23 23:20:17 +01:00
kperfmon
kq/mesh
leds leds: spi-byte: Call of_node_put() on error path 2024-11-23 23:21:03 +01:00
lightnvm
macintosh macintosh/therm_windtunnel: fix module unload. 2024-11-23 23:20:11 +01:00
mailbox mailbox: bcm2835: Fix timeout during suspend mode 2024-11-23 23:21:35 +01:00
mcb mcb: fix error handling for different scenarios when parsing 2024-11-18 11:43:25 +01:00
md Revert "dm: requeue IO if mapping table not yet available" 2024-11-23 23:21:28 +01:00
media drivers: media: dvb-frontends/rtl2830: fix an out-of-bounds write error 2024-11-23 23:21:25 +01:00
memory memory: stm32-fmc2-ebi: check regmap_read return value 2024-11-23 23:20:46 +01:00
memstick
message
mfd mfd: omap-usb-tll: Use struct_size to allocate tll 2024-11-23 23:20:09 +01:00
misc VMCI: Fix use-after-free when removing resource in vmci_resource_remove() 2024-11-23 23:21:07 +01:00
mmc mmc: cqhci: Fix checking of CQHCI_HALT state 2024-11-23 23:21:09 +01:00
most
mtd mtd: powernv: Add check devm_kasprintf() returned value 2024-11-23 23:21:21 +01:00
muic
mux
net net/mlx5: Fix error path in multi-packet WQE transmit 2024-11-23 23:21:35 +01:00
nfc nfc: pn533: Add poll mod list filling check 2024-11-23 23:20:55 +01:00
ntb ntb_perf: Fix printk format 2024-11-23 23:21:26 +01:00
nubus
nvdimm nd_btt: Make BTT lanes preemptible 2024-11-18 11:43:03 +01:00
nvme nvmet-tcp: fix kernel crash if commands allocation fails 2024-11-23 23:21:08 +01:00
nvmem nvmem: Fix return type of devm_nvmem_device_get() in kerneldoc 2024-11-23 23:21:07 +01:00
of of/irq: Prevent device address out-of-bounds read in interrupt map walk 2024-11-23 23:21:06 +01:00
opp OPP: debugfs: Fix warning around icc_get_name() 2024-11-19 08:44:49 +01:00
oprofile
parisc
parport dev/parport: fix the array out-of-bounds risk 2024-11-23 23:20:14 +01:00
pci PCI: xilinx-nwl: Fix off-by-one in INTx IRQ handler 2024-11-23 23:21:34 +01:00
pcmcia pcmcia: Use resource_size function on resource object 2024-11-23 23:21:03 +01:00
perf
phy phy: tegra: xusb: Add API to retrieve the port number of phy 2024-11-19 09:22:34 +01:00
pinctrl pinctrl: mvebu: Fix devinit_dove_pinctrl_probe function 2024-11-23 23:21:25 +01:00
platform platform/x86: dell-smbios: Fix error path in dell_smbios_init() 2024-11-23 23:21:04 +01:00
pnp PNP: ACPI: fix fortify warning 2024-11-18 12:13:09 +01:00
power power: supply: max17042_battery: Fix SOC threshold calc w/ no current sense 2024-11-23 23:21:20 +01:00
powercap powercap: RAPL: fix invalid initialization for pl4_supported field 2024-11-23 23:21:29 +01:00
pps pps: add an error check in parport_attach 2024-11-23 23:21:34 +01:00
ps3
ptp ptp: Fix error message on failed pin verification 2024-11-19 14:19:01 +01:00
pwm pwm: stm32: Always do lazy disabling 2024-11-23 23:19:56 +01:00
rapidio
ras
regulator regulator: core: Fix modpost error "regulator_get_regmap" undefined 2024-11-19 14:19:09 +01:00
remoteproc remoteproc: imx_rproc: Skip over memory region when node value is NULL 2024-11-23 23:20:20 +01:00
reset reset: berlin: fix OF node leak in probe() error path 2024-11-23 23:21:20 +01:00
rpmsg rpmsg: virtio: Free driver_override when rpmsg_remove() 2024-11-18 12:12:56 +01:00
rtc rtc: isl1208: Fix return value of nvmem callbacks 2024-11-23 23:20:15 +01:00
s390 s390/cio: rename bitmap_size() -> idset_bitmap_size() 2024-11-23 23:20:43 +01:00
samsung
sbus
scsi scsi: aacraid: Fix double-free on probe failure 2024-11-23 23:20:55 +01:00
sensorhub
sensors
sfi
sh
siox
slimbus slimbus: core: Remove usage of the deprecated ida_simple_xx() API 2024-11-19 09:22:34 +01:00
soc soc: versatile: realview: fix soc_dev leak during device remove 2024-11-23 23:21:34 +01:00
soundwire soundwire: stream: Revert "soundwire: stream: fix programming slave ports for non-continous port maps" 2024-11-23 23:21:13 +01:00
spi spi: lpspi: Simplify some error message 2024-11-23 23:21:34 +01:00
spmi
spu_verify
ssb ssb: Fix division by zero issue in ssb_calc_clock_rate 2024-11-23 23:20:44 +01:00
staging minmax: reduce min/max macro expansion in atomisp driver 2024-11-23 23:21:12 +01:00
sti
target target/file: allocate the bvec array as part of struct target_core_file_cmd 2024-11-19 17:42:15 +01:00
tc
tee tee: optee: Fix kernel panic caused by incorrect error handling 2024-11-19 09:22:39 +01:00
thermal thermal: core: prevent potential string overflow 2024-11-18 11:42:50 +01:00
thunderbolt thunderbolt: Mark XDomain as unplugged when router is removed 2024-11-23 23:20:42 +01:00
tty tty: rp2: Fix reset with non forgiving PCIe host bridges 2024-11-23 23:21:31 +01:00
uh
uio Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic 2024-11-23 23:21:07 +01:00
usb usb: yurex: Fix inconsistent locking bug in yurex_read() 2024-11-23 23:21:34 +01:00
vdpa
vfio vfio/fsl-mc: Block calling interrupt handler without trigger 2024-11-19 09:22:45 +01:00
vhost vhost_vdpa: assign irq bypass producer token correctly 2024-11-23 23:21:28 +01:00
vibrator
video fbdev: hpfb: Fix an error handling path in hpfb_dio_probe() 2024-11-23 23:21:21 +01:00
virt
virtio vdpa: Add eventfd for the vdpa callback 2024-11-23 23:21:28 +01:00
vision
vision3
visorbus
vlynq
vme
w1
watchdog watchdog: imx_sc_wdt: Don't disable WDT in suspend 2024-11-23 23:21:25 +01:00
xen xen/swiotlb: add alignment check for dma buffers 2024-11-23 23:21:22 +01:00
zorro
Kconfig Added KernelSU 2024-11-19 22:44:48 +01:00
Kconfig.variant1
kernelsu Added KernelSU 2024-11-19 22:44:48 +01:00
Makefile Added KernelSU 2024-11-19 22:44:48 +01:00
Makefile.variant1