]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.3-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 9 May 2023 03:03:18 +0000 (05:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 9 May 2023 03:03:18 +0000 (05:03 +0200)
added patches:
arch_topology-remove-early-cacheinfo-error-message-if-enoent.patch

queue-6.3/arch_topology-remove-early-cacheinfo-error-message-if-enoent.patch [new file with mode: 0644]
queue-6.3/series

diff --git a/queue-6.3/arch_topology-remove-early-cacheinfo-error-message-if-enoent.patch b/queue-6.3/arch_topology-remove-early-cacheinfo-error-message-if-enoent.patch
new file mode 100644 (file)
index 0000000..6a96d91
--- /dev/null
@@ -0,0 +1,51 @@
+From 3522340199cc060b70f0094e3039bdb43c3f6ee1 Mon Sep 17 00:00:00 2001
+From: Pierre Gondois <pierre.gondois@arm.com>
+Date: Fri, 14 Apr 2023 10:14:51 +0200
+Subject: arch_topology: Remove early cacheinfo error message if -ENOENT
+
+From: Pierre Gondois <pierre.gondois@arm.com>
+
+commit 3522340199cc060b70f0094e3039bdb43c3f6ee1 upstream.
+
+fetch_cache_info() tries to get the number of cache leaves/levels
+for each CPU in order to pre-allocate memory for cacheinfo struct.
+Allocating this memory later triggers a:
+  'BUG: sleeping function called from invalid context'
+in PREEMPT_RT kernels.
+
+If there is no cache related information available in DT or ACPI,
+fetch_cache_info() fails and an error message is printed:
+  'Early cacheinfo failed, ret = ...'
+
+Not having cache information should be a valid configuration.
+Remove the error message if fetch_cache_info() fails with -ENOENT.
+
+Suggested-by: Conor Dooley <conor.dooley@microchip.com>
+Link: https://lore.kernel.org/all/20230404-hatred-swimmer-6fecdf33b57a@spud/
+Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Link: https://lore.kernel.org/r/20230414081453.244787-4-pierre.gondois@arm.com
+Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
+Cc: Florian Fainelli <f.fainelli@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/base/arch_topology.c |    7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+--- a/drivers/base/arch_topology.c
++++ b/drivers/base/arch_topology.c
+@@ -843,10 +843,11 @@ void __init init_cpu_topology(void)
+       for_each_possible_cpu(cpu) {
+               ret = fetch_cache_info(cpu);
+-              if (ret) {
++              if (!ret)
++                      continue;
++              else if (ret != -ENOENT)
+                       pr_err("Early cacheinfo failed, ret = %d\n", ret);
+-                      break;
+-              }
++              return;
+       }
+ }
index b300ff806100dc6877eb84017e34b5740599a410..252080f056302b1b58f15b1cc5a77a7fa8999cb9 100644 (file)
@@ -691,3 +691,4 @@ cifs-fix-potential-race-when-tree-connecting-ipc.patch
 cifs-protect-access-of-tcp_server_info-origin-leaf-_fullpath.patch
 cifs-avoid-potential-races-when-handling-multiple-dfs-tcons.patch
 debugobject-ensure-pool-refill-again.patch
+arch_topology-remove-early-cacheinfo-error-message-if-enoent.patch