From cbddccaa148527fca7c3b02b316ec1681f497204 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 13 May 2024 16:14:34 +0200 Subject: [PATCH] 5.15-stable patches added patches: dyndbg-fix-old-bug_on-in-control-parser.patch mei-me-add-lunar-lake-point-m-did.patch slimbus-qcom-ngd-ctrl-add-timeout-for-wait-operation.patch --- ...dbg-fix-old-bug_on-in-control-parser.patch | 36 ++++++++++++++++ .../mei-me-add-lunar-lake-point-m-did.patch | 43 +++++++++++++++++++ queue-5.15/series | 3 ++ ...-ctrl-add-timeout-for-wait-operation.patch | 43 +++++++++++++++++++ 4 files changed, 125 insertions(+) create mode 100644 queue-5.15/dyndbg-fix-old-bug_on-in-control-parser.patch create mode 100644 queue-5.15/mei-me-add-lunar-lake-point-m-did.patch create mode 100644 queue-5.15/slimbus-qcom-ngd-ctrl-add-timeout-for-wait-operation.patch diff --git a/queue-5.15/dyndbg-fix-old-bug_on-in-control-parser.patch b/queue-5.15/dyndbg-fix-old-bug_on-in-control-parser.patch new file mode 100644 index 00000000000..918af6c5f64 --- /dev/null +++ b/queue-5.15/dyndbg-fix-old-bug_on-in-control-parser.patch @@ -0,0 +1,36 @@ +From 00e7d3bea2ce7dac7bee1cf501fb071fd0ea8f6c Mon Sep 17 00:00:00 2001 +From: Jim Cromie +Date: Mon, 29 Apr 2024 13:31:11 -0600 +Subject: dyndbg: fix old BUG_ON in >control parser + +From: Jim Cromie + +commit 00e7d3bea2ce7dac7bee1cf501fb071fd0ea8f6c upstream. + +Fix a BUG_ON from 2009. Even if it looks "unreachable" (I didn't +really look), lets make sure by removing it, doing pr_err and return +-EINVAL instead. + +Cc: stable +Signed-off-by: Jim Cromie +Link: https://lore.kernel.org/r/20240429193145.66543-2-jim.cromie@gmail.com +Signed-off-by: Greg Kroah-Hartman +--- + lib/dynamic_debug.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/lib/dynamic_debug.c ++++ b/lib/dynamic_debug.c +@@ -260,7 +260,11 @@ static int ddebug_tokenize(char *buf, ch + } else { + for (end = buf; *end && !isspace(*end); end++) + ; +- BUG_ON(end == buf); ++ if (end == buf) { ++ pr_err("parse err after word:%d=%s\n", nwords, ++ nwords ? words[nwords - 1] : ""); ++ return -EINVAL; ++ } + } + + /* `buf' is start of word, `end' is one past its end */ diff --git a/queue-5.15/mei-me-add-lunar-lake-point-m-did.patch b/queue-5.15/mei-me-add-lunar-lake-point-m-did.patch new file mode 100644 index 00000000000..2ef28a8c4e2 --- /dev/null +++ b/queue-5.15/mei-me-add-lunar-lake-point-m-did.patch @@ -0,0 +1,43 @@ +From 4108a30f1097eead0f6bd5d885e6bf093b4d460f Mon Sep 17 00:00:00 2001 +From: Alexander Usyskin +Date: Sun, 21 Apr 2024 16:56:31 +0300 +Subject: mei: me: add lunar lake point M DID + +From: Alexander Usyskin + +commit 4108a30f1097eead0f6bd5d885e6bf093b4d460f upstream. + +Add Lunar (Point) Lake M device id. + +Cc: stable@vger.kernel.org +Signed-off-by: Alexander Usyskin +Signed-off-by: Tomas Winkler +Link: https://lore.kernel.org/r/20240421135631.223362-1-tomas.winkler@intel.com +Signed-off-by: Greg Kroah-Hartman +--- + drivers/misc/mei/hw-me-regs.h | 2 ++ + drivers/misc/mei/pci-me.c | 2 ++ + 2 files changed, 4 insertions(+) + +--- a/drivers/misc/mei/hw-me-regs.h ++++ b/drivers/misc/mei/hw-me-regs.h +@@ -115,6 +115,8 @@ + #define MEI_DEV_ID_ARL_S 0x7F68 /* Arrow Lake Point S */ + #define MEI_DEV_ID_ARL_H 0x7770 /* Arrow Lake Point H */ + ++#define MEI_DEV_ID_LNL_M 0xA870 /* Lunar Lake Point M */ ++ + /* + * MEI HW Section + */ +--- a/drivers/misc/mei/pci-me.c ++++ b/drivers/misc/mei/pci-me.c +@@ -121,6 +121,8 @@ static const struct pci_device_id mei_me + {MEI_PCI_DEVICE(MEI_DEV_ID_ARL_S, MEI_ME_PCH15_CFG)}, + {MEI_PCI_DEVICE(MEI_DEV_ID_ARL_H, MEI_ME_PCH15_CFG)}, + ++ {MEI_PCI_DEVICE(MEI_DEV_ID_LNL_M, MEI_ME_PCH15_CFG)}, ++ + /* required last entry */ + {0, } + }; diff --git a/queue-5.15/series b/queue-5.15/series index 7d5973af6d1..f0b1bc98dbe 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -162,3 +162,6 @@ tipc-fix-uaf-in-error-path.patch net-bcmgenet-synchronize-use-of-bcmgenet_set_rx_mode.patch asoc-tegra-fix-dspk-16-bit-playback.patch asoc-ti-davinci-mcasp-fix-race-condition-during-probe.patch +dyndbg-fix-old-bug_on-in-control-parser.patch +slimbus-qcom-ngd-ctrl-add-timeout-for-wait-operation.patch +mei-me-add-lunar-lake-point-m-did.patch diff --git a/queue-5.15/slimbus-qcom-ngd-ctrl-add-timeout-for-wait-operation.patch b/queue-5.15/slimbus-qcom-ngd-ctrl-add-timeout-for-wait-operation.patch new file mode 100644 index 00000000000..ecdb35dc2cc --- /dev/null +++ b/queue-5.15/slimbus-qcom-ngd-ctrl-add-timeout-for-wait-operation.patch @@ -0,0 +1,43 @@ +From 98241a774db49988f25b7b3657026ce51ccec293 Mon Sep 17 00:00:00 2001 +From: Viken Dadhaniya +Date: Tue, 30 Apr 2024 10:12:38 +0100 +Subject: slimbus: qcom-ngd-ctrl: Add timeout for wait operation + +From: Viken Dadhaniya + +commit 98241a774db49988f25b7b3657026ce51ccec293 upstream. + +In current driver qcom_slim_ngd_up_worker() indefinitely +waiting for ctrl->qmi_up completion object. This is +resulting in workqueue lockup on Kthread. + +Added wait_for_completion_interruptible_timeout to +allow the thread to wait for specific timeout period and +bail out instead waiting infinitely. + +Fixes: a899d324863a ("slimbus: qcom-ngd-ctrl: add Sub System Restart support") +Cc: stable@vger.kernel.org +Reviewed-by: Konrad Dybcio +Signed-off-by: Viken Dadhaniya +Signed-off-by: Srinivas Kandagatla +Link: https://lore.kernel.org/r/20240430091238.35209-2-srinivas.kandagatla@linaro.org +Signed-off-by: Greg Kroah-Hartman +--- + drivers/slimbus/qcom-ngd-ctrl.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/drivers/slimbus/qcom-ngd-ctrl.c ++++ b/drivers/slimbus/qcom-ngd-ctrl.c +@@ -1376,7 +1376,11 @@ static void qcom_slim_ngd_up_worker(stru + ctrl = container_of(work, struct qcom_slim_ngd_ctrl, ngd_up_work); + + /* Make sure qmi service is up before continuing */ +- wait_for_completion_interruptible(&ctrl->qmi_up); ++ if (!wait_for_completion_interruptible_timeout(&ctrl->qmi_up, ++ msecs_to_jiffies(MSEC_PER_SEC))) { ++ dev_err(ctrl->dev, "QMI wait timeout\n"); ++ return; ++ } + + mutex_lock(&ctrl->ssr_lock); + qcom_slim_ngd_enable(ctrl, true); -- 2.47.3