Browse Source

bugfix: 当待释放的内存区域中同时存在4K页和2M页时,会释放错误数量的4K页的问题

fslongjin 2 years ago
parent
commit
47f45c2826
1 changed files with 1 additions and 0 deletions
  1. 1 0
      kernel/mm/mmap.c

+ 1 - 0
kernel/mm/mmap.c

@@ -286,6 +286,7 @@ void mm_unmap_proc_table(ul proc_page_table_addr, bool is_phys, ul virt_addr_sta
                 {
                 {
                     *pde_ptr = 0;
                     *pde_ptr = 0;
                     length_unmapped += PAGE_2M_SIZE;
                     length_unmapped += PAGE_2M_SIZE;
+                    pgt_num.num_PTE -= 512;
                 }
                 }
             }
             }