From 1ed023f4136c5b7132c12f3dfa4c62198f17bed4 Mon Sep 17 00:00:00 2001 From: Zhang Junyang Date: Mon, 2 Jun 2025 18:51:43 +0800 Subject: [PATCH] Fix the level comparison in `dfs_mark_stray_and_unlock` --- ostd/src/mm/page_table/cursor/locking.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ostd/src/mm/page_table/cursor/locking.rs b/ostd/src/mm/page_table/cursor/locking.rs index dbc8e218..02a28158 100644 --- a/ostd/src/mm/page_table/cursor/locking.rs +++ b/ostd/src/mm/page_table/cursor/locking.rs @@ -187,7 +187,7 @@ fn dfs_acquire_lock( debug_assert!(!*cur_node.stray_mut()); let cur_level = cur_node.level(); - if cur_level <= 1 { + if cur_level == 1 { return; } @@ -222,7 +222,7 @@ unsafe fn dfs_release_lock<'rcu, E: PageTableEntryTrait, C: PagingConstsTrait>( va_range: Range, ) { let cur_level = cur_node.level(); - if cur_level <= 1 { + if cur_level == 1 { return; } @@ -265,7 +265,7 @@ pub(super) unsafe fn dfs_mark_stray_and_unlock 1 { + if sub_tree.level() == 1 { return; }