From b441f6433d8da171208bc73ccd5a4fc6f77b24bc Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 24 Jun 2024 19:46:44 +0200 Subject: [PATCH] 5.4-stable patches added patches: drm-radeon-fix-ubsan-warning-in-kv_dpm.c.patch gcov-add-support-for-gcc-14.patch i2c-ocores-set-iack-bit-after-core-is-enabled.patch --- ...radeon-fix-ubsan-warning-in-kv_dpm.c.patch | 30 ++++++++++++++ queue-5.4/gcov-add-support-for-gcc-14.patch | 40 +++++++++++++++++++ ...s-set-iack-bit-after-core-is-enabled.patch | 39 ++++++++++++++++++ queue-5.4/series | 3 ++ 4 files changed, 112 insertions(+) create mode 100644 queue-5.4/drm-radeon-fix-ubsan-warning-in-kv_dpm.c.patch create mode 100644 queue-5.4/gcov-add-support-for-gcc-14.patch create mode 100644 queue-5.4/i2c-ocores-set-iack-bit-after-core-is-enabled.patch diff --git a/queue-5.4/drm-radeon-fix-ubsan-warning-in-kv_dpm.c.patch b/queue-5.4/drm-radeon-fix-ubsan-warning-in-kv_dpm.c.patch new file mode 100644 index 00000000000..47aada28bf8 --- /dev/null +++ b/queue-5.4/drm-radeon-fix-ubsan-warning-in-kv_dpm.c.patch @@ -0,0 +1,30 @@ +From a498df5421fd737d11bfd152428ba6b1c8538321 Mon Sep 17 00:00:00 2001 +From: Alex Deucher +Date: Mon, 20 May 2024 09:11:45 -0400 +Subject: drm/radeon: fix UBSAN warning in kv_dpm.c + +From: Alex Deucher + +commit a498df5421fd737d11bfd152428ba6b1c8538321 upstream. + +Adds bounds check for sumo_vid_mapping_entry. + +Reviewed-by: Mario Limonciello +Signed-off-by: Alex Deucher +Cc: stable@vger.kernel.org +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/radeon/sumo_dpm.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/gpu/drm/radeon/sumo_dpm.c ++++ b/drivers/gpu/drm/radeon/sumo_dpm.c +@@ -1621,6 +1621,8 @@ void sumo_construct_vid_mapping_table(st + + for (i = 0; i < SUMO_MAX_HARDWARE_POWERLEVELS; i++) { + if (table[i].ulSupportedSCLK != 0) { ++ if (table[i].usVoltageIndex >= SUMO_MAX_NUMBER_VOLTAGES) ++ continue; + vid_mapping_table->entries[table[i].usVoltageIndex].vid_7bit = + table[i].usVoltageID; + vid_mapping_table->entries[table[i].usVoltageIndex].vid_2bit = diff --git a/queue-5.4/gcov-add-support-for-gcc-14.patch b/queue-5.4/gcov-add-support-for-gcc-14.patch new file mode 100644 index 00000000000..928df685603 --- /dev/null +++ b/queue-5.4/gcov-add-support-for-gcc-14.patch @@ -0,0 +1,40 @@ +From c1558bc57b8e5b4da5d821537cd30e2e660861d8 Mon Sep 17 00:00:00 2001 +From: Peter Oberparleiter +Date: Mon, 10 Jun 2024 11:27:43 +0200 +Subject: gcov: add support for GCC 14 + +From: Peter Oberparleiter + +commit c1558bc57b8e5b4da5d821537cd30e2e660861d8 upstream. + +Using gcov on kernels compiled with GCC 14 results in truncated 16-byte +long .gcda files with no usable data. To fix this, update GCOV_COUNTERS +to match the value defined by GCC 14. + +Tested with GCC versions 14.1.0 and 13.2.0. + +Link: https://lkml.kernel.org/r/20240610092743.1609845-1-oberpar@linux.ibm.com +Signed-off-by: Peter Oberparleiter +Reported-by: Allison Henderson +Reported-by: Chuck Lever III +Tested-by: Chuck Lever +Cc: +Signed-off-by: Andrew Morton +Signed-off-by: Greg Kroah-Hartman +--- + kernel/gcov/gcc_4_7.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- a/kernel/gcov/gcc_4_7.c ++++ b/kernel/gcov/gcc_4_7.c +@@ -19,7 +19,9 @@ + #include + #include "gcov.h" + +-#if (__GNUC__ >= 10) ++#if (__GNUC__ >= 14) ++#define GCOV_COUNTERS 9 ++#elif (__GNUC__ >= 10) + #define GCOV_COUNTERS 8 + #elif (__GNUC__ >= 7) + #define GCOV_COUNTERS 9 diff --git a/queue-5.4/i2c-ocores-set-iack-bit-after-core-is-enabled.patch b/queue-5.4/i2c-ocores-set-iack-bit-after-core-is-enabled.patch new file mode 100644 index 00000000000..e06d8267b13 --- /dev/null +++ b/queue-5.4/i2c-ocores-set-iack-bit-after-core-is-enabled.patch @@ -0,0 +1,39 @@ +From 5a72477273066b5b357801ab2d315ef14949d402 Mon Sep 17 00:00:00 2001 +From: Grygorii Tertychnyi +Date: Mon, 20 May 2024 17:39:32 +0200 +Subject: i2c: ocores: set IACK bit after core is enabled + +From: Grygorii Tertychnyi + +commit 5a72477273066b5b357801ab2d315ef14949d402 upstream. + +Setting IACK bit when core is disabled does not clear the "Interrupt Flag" +bit in the status register, and the interrupt remains pending. + +Sometimes it causes failure for the very first message transfer, that is +usually a device probe. + +Hence, set IACK bit after core is enabled to clear pending interrupt. + +Fixes: 18f98b1e3147 ("[PATCH] i2c: New bus driver for the OpenCores I2C controller") +Signed-off-by: Grygorii Tertychnyi +Acked-by: Peter Korsgaard +Cc: stable@vger.kernel.org +Signed-off-by: Andi Shyti +Signed-off-by: Greg Kroah-Hartman +--- + drivers/i2c/busses/i2c-ocores.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/i2c/busses/i2c-ocores.c ++++ b/drivers/i2c/busses/i2c-ocores.c +@@ -443,8 +443,8 @@ static int ocores_init(struct device *de + oc_setreg(i2c, OCI2C_PREHIGH, prescale >> 8); + + /* Init the device */ +- oc_setreg(i2c, OCI2C_CMD, OCI2C_CMD_IACK); + oc_setreg(i2c, OCI2C_CONTROL, ctrl | OCI2C_CTRL_EN); ++ oc_setreg(i2c, OCI2C_CMD, OCI2C_CMD_IACK); + + return 0; + } diff --git a/queue-5.4/series b/queue-5.4/series index d3d2cf655ee..cac13825627 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -143,3 +143,6 @@ regulator-core-fix-modpost-error-regulator_get_regma.patch dmaengine-ioatdma-fix-missing-kmem_cache_destroy.patch acpica-revert-acpica-avoid-info-mapping-multiple-bar.patch mm-fix-race-between-__split_huge_pmd_locked-and-gup-fast.patch +drm-radeon-fix-ubsan-warning-in-kv_dpm.c.patch +gcov-add-support-for-gcc-14.patch +i2c-ocores-set-iack-bit-after-core-is-enabled.patch -- 2.47.3