aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2025-07-14 19:25:28 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2025-07-14 19:25:28 -0700
commit155a3c003e555a7300d156a5252c004c392ec6b0 (patch)
treeb5baddef5ff0b5f5e3276ac40de6a82f23c5229a
parentLinux 6.16-rc6 (diff)
parentdm-bufio: fix sched in atomic context (diff)
downloadwireguard-linux-155a3c003e555a7300d156a5252c004c392ec6b0.tar.xz
wireguard-linux-155a3c003e555a7300d156a5252c004c392ec6b0.zip
Merge tag 'for-6.16/dm-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
Pull device mapper fix from Mikulas Patocka: - dm-bufio: fix scheduling in atomic * tag 'for-6.16/dm-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: dm-bufio: fix sched in atomic context
-rw-r--r--drivers/md/dm-bufio.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/md/dm-bufio.c b/drivers/md/dm-bufio.c
index ec84ba5e93e5..ff7595caf440 100644
--- a/drivers/md/dm-bufio.c
+++ b/drivers/md/dm-bufio.c
@@ -2742,7 +2742,11 @@ static unsigned long __evict_a_few(unsigned long nr_buffers)
__make_buffer_clean(b);
__free_buffer_wake(b);
- cond_resched();
+ if (need_resched()) {
+ dm_bufio_unlock(c);
+ cond_resched();
+ dm_bufio_lock(c);
+ }
}
dm_bufio_unlock(c);