linux/drivers/soc/qcom
Bjorn Andersson fa725a427d soc: qcom: mdt_loader: Deal with zero e_shentsize
commit 25daf9af0a upstream.

Firmware that doesn't provide section headers leave both e_shentsize and
e_shnum 0, which obvious isn't compatible with the newly introduced
stricter checks.

Make the section-related checks conditional on either of these values
being non-zero.

Fixes: 9f9967fed9 ("soc: qcom: mdt_loader: Ensure we don't read past the ELF header")
Reported-by: Val Packett <val@packett.cool>
Closes: https://lore.kernel.org/all/ece307c3-7d65-440f-babd-88cf9705b908@packett.cool/
Reported-by: Neil Armstrong <neil.armstrong@linaro.org>
Closes: https://lore.kernel.org/all/aec9cd03-6fc2-4dc8-b937-8b7cf7bf4128@linaro.org/
Signed-off-by: Bjorn Andersson <bjorn.andersson@oss.qualcomm.com>
Fixes: 9f35ab0e53 ("soc: qcom: mdt_loader: Fix error return values in mdt_header_valid()")
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8650-QRD
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250730-mdt-loader-shentsize-zero-v1-1-04f43186229c@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Cc: Yongqin Liu <yongqin.liu@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-09-19 16:30:00 +02:00
..
apr.c soc: qcom: apr: Make qcom,protection-domain optional again 2023-01-24 07:24:44 +01:00
cmd-db.c soc: qcom: cmd-db: Map shared memory as WC, not WB 2024-09-04 13:25:03 +02:00
cpr.c PM: AVS: qcom-cpr: Fix an error handling path in cpr_probe() 2023-02-01 08:34:08 +01:00
icc-bwmon.c soc: qcom: icc-bwmon: fix incorrect error code passed to dev_err_probe() 2023-06-14 11:15:28 +02:00
Kconfig soc: qcom: Select REMAP_MMIO for ICC_BWMON driver 2023-01-07 11:11:36 +01:00
kryo-l2-accessors.c soc: qcom: kryo-l2-accessors: Fix misnaming of 'val' 2020-11-10 23:23:02 -06:00
llcc-qcom.c soc: qcom: llcc: Fix dis_cap_alloc and retain_on_pc configuration 2024-01-25 15:27:28 -08:00
Makefile soc: qcom: icc-bwmon: Add bandwidth monitoring driver 2022-07-06 15:57:51 -05:00
mdt_loader.c soc: qcom: mdt_loader: Deal with zero e_shentsize 2025-09-19 16:30:00 +02:00
ocmem.c soc: qcom: ocmem: Fix NUM_PORTS & NUM_MACROS macros 2023-09-13 09:42:36 +02:00
pdr_interface.c soc: qcom: pdr: Fix the potential deadlock 2025-03-28 21:59:01 +01:00
pdr_internal.h soc: qcom: pdr: use static for servreg_* variables 2022-05-05 22:08:15 -05:00
qcom-geni-se.c soc: qcom: geni-se: fix array underflow in geni_se_clk_tbl_get() 2024-12-14 19:53:20 +01:00
qcom_aoss.c soc: qcom: aoss: Fix refcount leak in qmp_cooling_devices_register 2022-06-30 22:03:58 -05:00
qcom_gsbi.c soc: qcom: gsbi: Make use of the helper function devm_platform_ioremap_resource() 2021-09-21 17:41:48 -05:00
qcom_stats.c soc: qcom: stats: Populate all subsystem debugfs files 2023-03-11 13:55:22 +01:00
qmi_encdec.c soc: qcom: QMI encoding/decoding for big endian 2025-08-15 12:04:53 +02:00
qmi_interface.c soc: qcom: qmi: use const for struct qmi_elem_info 2022-08-29 17:33:01 -05:00
rmtfs_mem.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 2019-06-05 17:36:37 +02:00
rpmh-internal.h soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free 2020-09-10 16:56:12 +00:00
rpmh-rsc.c soc: qcom: rpmh-rsc: Ensure irqs aren't disabled by rpmh_rsc_send_data() callers 2024-08-03 08:48:57 +02:00
rpmh.c soc: qcom: rpmh-rsc: Ensure irqs aren't disabled by rpmh_rsc_send_data() callers 2024-08-03 08:48:57 +02:00
rpmhpd.c pmdomain: qcom: rpmhpd: Drop SA8540P gfx.lvl 2024-03-26 18:20:32 -04:00
rpmpd.c soc: qcom: rpmpd: Add SM6375 support 2022-09-13 22:25:35 -05:00
smd-rpm.c soc: qcom: smd-rpm: Add compatible for MSM8909 2022-07-18 18:05:07 -05:00
smem.c soc: qcom: smem: Fix incompatible types in comparison 2023-09-13 09:42:42 +02:00
smem_state.c soc: qcom: smem_state: fix missing of_node_put in error path 2025-02-21 13:49:48 +01:00
smp2p.c soc: qcom: correct kerneldoc 2022-06-25 22:05:31 -05:00
smsm.c soc: qcom: smsm: Fix refcount leak bugs in qcom_smsm_probe() 2022-08-18 14:13:46 -05:00
socinfo.c soc: qcom: socinfo: Avoid out of bounds read of serial number 2025-02-21 13:49:43 +01:00
spm.c soc: qcom: spm: Add CPU data for MSM8909 2022-07-18 18:05:07 -05:00
trace-rpmh.h drivers: qcom: rpmh-rsc: log RPMH requests in FTRACE 2018-07-21 13:32:31 -05:00
wcnss_ctrl.c soc: qcom: wcnss_ctrl: Allow reading firmware-name from DT 2021-04-05 22:35:06 -05:00