From: Greg Kroah-Hartman Date: Fri, 22 Sep 2023 16:17:46 +0000 (+0200) Subject: 6.5-stable patches X-Git-Tag: v4.14.326~10 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=27dd9efb28fa7ddeb3d39cf50f4d739ccc2edd4a;p=thirdparty%2Fkernel%2Fstable-queue.git 6.5-stable patches added patches: interconnect-teach-lockdep-about-icc_bw_lock-order.patch --- diff --git a/queue-6.5/interconnect-teach-lockdep-about-icc_bw_lock-order.patch b/queue-6.5/interconnect-teach-lockdep-about-icc_bw_lock-order.patch new file mode 100644 index 00000000000..e0aa2238f2a --- /dev/null +++ b/queue-6.5/interconnect-teach-lockdep-about-icc_bw_lock-order.patch @@ -0,0 +1,47 @@ +From 13619170303878e1dae86d9a58b039475c957fcf Mon Sep 17 00:00:00 2001 +From: Rob Clark +Date: Mon, 7 Aug 2023 10:11:41 -0700 +Subject: interconnect: Teach lockdep about icc_bw_lock order + +From: Rob Clark + +commit 13619170303878e1dae86d9a58b039475c957fcf upstream. + +Teach lockdep that icc_bw_lock is needed in code paths that could +deadlock if they trigger reclaim. + +Signed-off-by: Rob Clark +Link: https://lore.kernel.org/r/20230807171148.210181-8-robdclark@gmail.com +Signed-off-by: Georgi Djakov +Cc: Guenter Roeck +Cc: Jon Hunter +Signed-off-by: Greg Kroah-Hartman +--- + drivers/interconnect/core.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +--- a/drivers/interconnect/core.c ++++ b/drivers/interconnect/core.c +@@ -1041,13 +1041,21 @@ void icc_sync_state(struct device *dev) + } + } + } ++ mutex_unlock(&icc_bw_lock); + mutex_unlock(&icc_lock); + } + EXPORT_SYMBOL_GPL(icc_sync_state); + + static int __init icc_init(void) + { +- struct device_node *root = of_find_node_by_path("/"); ++ struct device_node *root; ++ ++ /* Teach lockdep about lock ordering wrt. shrinker: */ ++ fs_reclaim_acquire(GFP_KERNEL); ++ might_lock(&icc_bw_lock); ++ fs_reclaim_release(GFP_KERNEL); ++ ++ root = of_find_node_by_path("/"); + + providers_count = of_count_icc_providers(root); + of_node_put(root); diff --git a/queue-6.5/series b/queue-6.5/series index c1a25e3f089..90bf1dbb172 100644 --- a/queue-6.5/series +++ b/queue-6.5/series @@ -209,3 +209,4 @@ drm-amd-display-add-dpia-link-encoder-assignment-fix.patch drm-amd-display-fix-2nd-dpia-encoder-assignment.patch revert-memcg-drop-kmem.limit_in_bytes.patch drm-amdgpu-fix-amdgpu_cs_p1_user_fence.patch +interconnect-teach-lockdep-about-icc_bw_lock-order.patch