| author | 2026-09-18 21:45:43 +0700 | |
|---|---|---|
| committer | 2026-09-18 21:45:43 +0700 | |
| commit | 1f2b96ab1a13be88c57c78be08168c0bb0080088 (patch) | |
| tree | cb830075f52e08698d63f0e5c4e1359a063a62b8 /patches/remoteproc/0003-soc-qcom-smp2p-Use-length-limited-strncmp-for-compar.patch | |
| parent | ee8c44555b0c3d61bf1998ddf3a5823db04ae68f (diff) | |
| download | kernel-surface-1f2b96ab1a13be88c57c78be08168c0bb0080088.tar.gz kernel-surface-1f2b96ab1a13be88c57c78be08168c0bb0080088.zip | |
fix: adapt patches for some 7.2.6 kernel updates to remoteproc and usbfedora-45-kernel-7.2.6-patchset-1
Diffstat (limited to 'patches/remoteproc/0003-soc-qcom-smp2p-Use-length-limited-strncmp-for-compar.patch')
| -rw-r--r-- | patches/remoteproc/0003-soc-qcom-smp2p-Use-length-limited-strncmp-for-compar.patch | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/patches/remoteproc/0003-soc-qcom-smp2p-Use-length-limited-strncmp-for-compar.patch b/patches/remoteproc/0003-soc-qcom-smp2p-Use-length-limited-strncmp-for-compar.patch new file mode 100644 index 0000000..7bbb199 --- /dev/null +++ b/patches/remoteproc/0003-soc-qcom-smp2p-Use-length-limited-strncmp-for-compar.patch @@ -0,0 +1,24 @@ +A rogue (or broken) remoteproc might not null-terminate its entry names. +Use strncmp() instead of strcmp() to avoid making out of bounds accesses in +that situation. + +Fixes: 50e99641413e ("soc: qcom: smp2p: Qualcomm Shared Memory Point to Point") +Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org> +Signed-off-by: Abel Vesa <abel.vesa@oss.qualcomm.com> +--- + drivers/soc/qcom/smp2p.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/soc/qcom/smp2p.c b/drivers/soc/qcom/smp2p.c +index 876648d0b..dcf222b19 100644 +--- a/drivers/soc/qcom/smp2p.c ++++ b/drivers/soc/qcom/smp2p.c +@@ -238,7 +238,7 @@ static void qcom_smp2p_notify_in(struct qcom_smp2p *smp2p) + for (i = smp2p->valid_entries; i < in->valid_entries; i++) { + list_for_each_entry(entry, &smp2p->inbound, node) { + memcpy(buf, in->entries[i].name, sizeof(buf)); +- if (!strcmp(buf, entry->name)) { ++ if (!strncmp(buf, entry->name, SMP2P_MAX_ENTRY_NAME)) { + entry->value = &in->entries[i].value; + break; + } |