Hacker News new | ask | show | jobs
by amluto 174 days ago
Don’t use recursive page tables.

- What if you want to port to an architecture that can’t do them?

- How sure are you that all the bonus bits in the entries line up right?

- What if you want to use huge pages of various sizes?

- What if you want to write-protect some page tables?

- What if you want to access a non-current page table? If you do that you need to write all the relevant logic anyway.

- What if a page table isn’t allocated? You probably don’t want to find out by trying to access it and getting a page fault in kernel mode.

- What if you don’t want user code to be able to trivially guess kernel addresses?