android_kernel_motorola_sm6375/drivers/misc
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Ekansh Gupta b04fd7cdd8 misc: fastrpc: Fix registered buffer page address
commit 6ca4ea1f88a06a04ed7b2c9c6bf9f00833b68214 upstream.

For registered  buffers, fastrpc driver sends the buffer information
to remote subsystem. There is a problem with current implementation
where the page address is being sent with an offset leading to
improper buffer address on DSP. This is leads to functional failures
as DSP expects base address in page information and extracts offset
information from remote arguments. Mask the offset and pass the base
page address to DSP.

This issue is observed is a corner case when some buffer which is registered
with fastrpc framework is passed with some offset by user and then the DSP
implementation tried to read the data. As DSP expects base address and takes
care of offsetting with remote arguments, passing an offsetted address will
result in some unexpected data read in DSP.

All generic usecases usually pass the buffer as it is hence is problem is
not usually observed. If someone tries to pass offsetted buffer and then
tries to compare data at HLOS and DSP end, then the ambiguity will be observed.

Fixes: 80f3afd72b ("misc: fastrpc: consider address offset before sending to DSP")
Cc: stable@kernel.org
Signed-off-by: Ekansh Gupta <quic_ekangupt@quicinc.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20250110134239.123603-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-03-13 12:43:11 +01:00
..
altera-stapl
c2port
cardreader drivers/card_reader/rtsx_usb: Restore interrupt based detection 2025-03-13 12:43:01 +01:00
cb710
cxl
echo
eeprom misc: eeprom: eeprom_93cx6: Add quirk for extra read clock cycle 2024-12-14 19:44:55 +01:00
genwqe
habanalabs
ibmasm
lis3lv02d
lkdtm
mei mei: demote client disconnect warning on suspend to debug 2024-07-27 10:38:29 +02:00
mic
ocxl
sgi-gru misc: sgi-gru: Don't disable preemption in GRU driver 2024-11-08 16:20:53 +01:00
sgi-xp
ti-st drivers/misc: ti-st: Remove unneeded variable in st_tty_open 2024-11-08 16:20:53 +01:00
vmw_vmci VMCI: Fix use-after-free when removing resource in vmci_resource_remove() 2024-09-12 11:03:55 +02:00
ad525x_dpot-i2c.c
ad525x_dpot-spi.c
ad525x_dpot.c
ad525x_dpot.h
apds990x.c misc: apds990x: Fix missing pm_runtime_disable() 2024-12-14 19:44:34 +01:00
apds9802als.c
atmel-ssc.c
atmel_tclib.c
bh1770glc.c
cs5535-mfgpt.c
ds1682.c
dummy-irq.c
enclosure.c
fastrpc.c misc: fastrpc: Fix registered buffer page address 2025-03-13 12:43:11 +01:00
hmc6352.c
hpilo.c
hpilo.h
ibmvmc.c
ibmvmc.h
ics932s401.c
isl29003.c
isl29020.c
Kconfig
kgdbts.c
lattice-ecp3-config.c
Makefile
pch_phub.c
pci_endpoint_test.c misc: pci_endpoint_test: Re-init completion for every test 2023-07-27 08:37:37 +02:00
phantom.c
pti.c
pvpanic.c
qcom-coincell.c
sram-exec.c
sram.c
sram.h
tifm_7xx1.c
tifm_core.c
tsl2550.c
vexpress-syscfg.c
vmw_balloon.c
xilinx_sdfec.c