How to free a page table page
Wonkyo Choe
heysid3 at gmail.com
Tue Apr 6 02:30:24 EDT 2021
I really appreciate it! I really needed to know when exactly page
tables get freed.
As I looked at your functions, I ended up figuring out that my kernel (v5.3)
defines HAVE_RCU_TABLE_FREE (I assume this is the default option)
and uses __tlb_remove_table(), which frees pages. Finally, my functions
work on these functions.
Thanks again.
2021년 4월 6일 (화) 오전 11:42, Rik van Riel <riel at surriel.com>님이 작성:
>
> On Tue, 2021-04-06 at 00:39 +0900, Wonkyo Choe wrote:
>
> > 1. In x86, are all page-table pages released at the end of
> > termination
> > by using free_pgtables()?
> > 2. In x86, a page-table page can be freed when there is no entry? In
> > other words, does the Linux kernel
> > release a page-table page on runtime? If so, what function would do
> > this kind of task?
>
> At munmap time, as well as exit and execve time, page
> tables can get freed. Look at the code between sys_munmap()
> and zap_page_range().
>
> --
> All Rights Reversed.
--
=======================
최원교 / Wonkyo Choe
Phone. +82 10-5755-4519
=======================
More information about the Kernelnewbies
mailing list