From: Greg Kroah-Hartman Date: Thu, 3 Oct 2024 07:14:40 +0000 (+0200) Subject: 6.11-stable patches X-Git-Tag: v6.6.54~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ce7897bf23db136305d7c0d4d2736d2a20337da8;p=thirdparty%2Fkernel%2Fstable-queue.git 6.11-stable patches added patches: spi-atmel-quadspi-fix-wrong-register-value-written-to-mr.patch --- diff --git a/queue-6.11/perf-callchain-fix-stitch-lbr-memory-leaks.patch b/queue-6.11/perf-callchain-fix-stitch-lbr-memory-leaks.patch index da090e7594f..3a745d07d13 100644 --- a/queue-6.11/perf-callchain-fix-stitch-lbr-memory-leaks.patch +++ b/queue-6.11/perf-callchain-fix-stitch-lbr-memory-leaks.patch @@ -48,16 +48,14 @@ Link: https://lore.kernel.org/r/20240808054644.1286065-1-irogers@google.com Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: Sasha Levin --- - tools/perf/util/machine.c | 17 +++++++++++++++-- - tools/perf/util/thread.c | 4 ++++ - tools/perf/util/thread.h | 1 + + tools/perf/util/machine.c | 17 +++++++++++++++-- + tools/perf/util/thread.c | 4 ++++ + tools/perf/util/thread.h | 1 + 3 files changed, 20 insertions(+), 2 deletions(-) -diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c -index 8477edefc2997..706be5e4a0761 100644 --- a/tools/perf/util/machine.c +++ b/tools/perf/util/machine.c -@@ -2270,8 +2270,12 @@ static void save_lbr_cursor_node(struct thread *thread, +@@ -2270,8 +2270,12 @@ static void save_lbr_cursor_node(struct cursor->curr = cursor->first; else cursor->curr = cursor->curr->next; @@ -70,7 +68,7 @@ index 8477edefc2997..706be5e4a0761 100644 lbr_stitch->prev_lbr_cursor[idx].valid = true; cursor->pos++; -@@ -2482,6 +2486,9 @@ static bool has_stitched_lbr(struct thread *thread, +@@ -2482,6 +2486,9 @@ static bool has_stitched_lbr(struct thre memcpy(&stitch_node->cursor, &lbr_stitch->prev_lbr_cursor[i], sizeof(struct callchain_cursor_node)); @@ -80,7 +78,7 @@ index 8477edefc2997..706be5e4a0761 100644 if (callee) list_add(&stitch_node->node, &lbr_stitch->lists); else -@@ -2505,6 +2512,8 @@ static bool alloc_lbr_stitch(struct thread *thread, unsigned int max_lbr) +@@ -2505,6 +2512,8 @@ static bool alloc_lbr_stitch(struct thre if (!thread__lbr_stitch(thread)->prev_lbr_cursor) goto free_lbr_stitch; @@ -89,7 +87,7 @@ index 8477edefc2997..706be5e4a0761 100644 INIT_LIST_HEAD(&thread__lbr_stitch(thread)->lists); INIT_LIST_HEAD(&thread__lbr_stitch(thread)->free_lists); -@@ -2560,8 +2569,12 @@ static int resolve_lbr_callchain_sample(struct thread *thread, +@@ -2560,8 +2569,12 @@ static int resolve_lbr_callchain_sample( max_lbr, callee); if (!stitched_lbr && !list_empty(&lbr_stitch->lists)) { @@ -104,11 +102,9 @@ index 8477edefc2997..706be5e4a0761 100644 } memcpy(&lbr_stitch->prev_sample, sample, sizeof(*sample)); } -diff --git a/tools/perf/util/thread.c b/tools/perf/util/thread.c -index 87c59aa9fe38b..0ffdd52d86d70 100644 --- a/tools/perf/util/thread.c +++ b/tools/perf/util/thread.c -@@ -476,6 +476,7 @@ void thread__free_stitch_list(struct thread *thread) +@@ -476,6 +476,7 @@ void thread__free_stitch_list(struct thr return; list_for_each_entry_safe(pos, tmp, &lbr_stitch->lists, node) { @@ -116,7 +112,7 @@ index 87c59aa9fe38b..0ffdd52d86d70 100644 list_del_init(&pos->node); free(pos); } -@@ -485,6 +486,9 @@ void thread__free_stitch_list(struct thread *thread) +@@ -485,6 +486,9 @@ void thread__free_stitch_list(struct thr free(pos); } @@ -126,8 +122,6 @@ index 87c59aa9fe38b..0ffdd52d86d70 100644 zfree(&lbr_stitch->prev_lbr_cursor); free(thread__lbr_stitch(thread)); thread__set_lbr_stitch(thread, NULL); -diff --git a/tools/perf/util/thread.h b/tools/perf/util/thread.h -index 8b4a3c69bad19..6cbf6eb2812e0 100644 --- a/tools/perf/util/thread.h +++ b/tools/perf/util/thread.h @@ -26,6 +26,7 @@ struct lbr_stitch { @@ -138,6 +132,3 @@ index 8b4a3c69bad19..6cbf6eb2812e0 100644 }; DECLARE_RC_STRUCT(thread) { --- -2.43.0 - diff --git a/queue-6.11/series b/queue-6.11/series index 3cd041ff812..2dffcf16f13 100644 --- a/queue-6.11/series +++ b/queue-6.11/series @@ -694,3 +694,4 @@ i2c-xiic-try-re-initialization-on-bus-busy-timeout.patch documentation-kvm-fix-warning-in-make-htmldocs.patch bpf-fix-use-after-free-in-bpf_uprobe_multi_link_attach.patch block-fix-elv_iosched_local_module-handling-of-none-scheduler.patch +spi-atmel-quadspi-fix-wrong-register-value-written-to-mr.patch diff --git a/queue-6.11/spi-atmel-quadspi-fix-wrong-register-value-written-to-mr.patch b/queue-6.11/spi-atmel-quadspi-fix-wrong-register-value-written-to-mr.patch new file mode 100644 index 00000000000..3826695a0bd --- /dev/null +++ b/queue-6.11/spi-atmel-quadspi-fix-wrong-register-value-written-to-mr.patch @@ -0,0 +1,32 @@ +From 162d9b5d2308c7e48efbc97d36babbf4d73b2c61 Mon Sep 17 00:00:00 2001 +From: Alexander Dahl +Date: Thu, 26 Sep 2024 11:03:56 +0200 +Subject: spi: atmel-quadspi: Fix wrong register value written to MR + +From: Alexander Dahl + +commit 162d9b5d2308c7e48efbc97d36babbf4d73b2c61 upstream. + +aq->mr should go to MR, nothing else. + +Fixes: 329ca3eed4a9 ("spi: atmel-quadspi: Avoid overwriting delay register settings") +Signed-off-by: Alexander Dahl +Link: https://lore.kernel.org/linux-spi/20240926-macarena-wincing-7c4995487a29@thorsis.com/T/#u +Link: https://patch.msgid.link/20240926090356.105789-1-ada@thorsis.com +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman +--- + drivers/spi/atmel-quadspi.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/spi/atmel-quadspi.c ++++ b/drivers/spi/atmel-quadspi.c +@@ -377,7 +377,7 @@ static int atmel_qspi_set_cfg(struct atm + */ + if (!(aq->mr & QSPI_MR_SMM)) { + aq->mr |= QSPI_MR_SMM; +- atmel_qspi_write(aq->scr, aq, QSPI_MR); ++ atmel_qspi_write(aq->mr, aq, QSPI_MR); + } + + /* Clear pending interrupts */