summaryrefslogtreecommitdiff
path: root/mm/page_alloc.c
diff options
context:
space:
mode:
authorEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2025-06-19 08:37:27 +0200
committerEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2025-06-19 10:55:50 +0200
commit3bb604cef85fb366931a777a20579cc7c24b6c5c (patch)
tree855a4c90b2b093047060d9a5c5888a27e68e54cd /mm/page_alloc.c
parent1e78582cc49cd07d726ea073178625c1cbbed013 (diff)
parent58485ff1a74f6c5be9e7c6aafb7293e4337348e7 (diff)
Merge tag 'v6.1.141' into toradex_ti-linux-6.1.y
This is the 6.1.141 stable release Conflicts: drivers/spi/spi-cadence-quadspi.c Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r--mm/page_alloc.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 65ad214e21f3..5a2bae590ed7 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -5195,6 +5195,14 @@ restart:
}
retry:
+ /*
+ * Deal with possible cpuset update races or zonelist updates to avoid
+ * infinite retries.
+ */
+ if (check_retry_cpuset(cpuset_mems_cookie, ac) ||
+ check_retry_zonelist(zonelist_iter_cookie))
+ goto restart;
+
/* Ensure kswapd doesn't accidentally go to sleep as long as we loop */
if (alloc_flags & ALLOC_KSWAPD)
wake_all_kswapds(order, gfp_mask, ac);