fix: vspace: entry: PTEFlags -> MapAttr: RWX must all be empty when indicating a page table

This commit is contained in:
Paul Pan 2024-06-14 21:06:09 +08:00
parent 42a7ea89c5
commit c451aa4c76

View File

@ -36,7 +36,10 @@ impl From<PTEFlags> for MapAttr {
if flags.contains(PTEFlags::USER_ACCESSIBLE) {
attr.insert(Self::USER_ACCESSIBLE);
}
if flags.contains(PTEFlags::VALID) && !flags.contains(PTEFlags::READABLE | PTEFlags::WRITABLE | PTEFlags::EXECUTABLE)
if flags.contains(PTEFlags::VALID)
&& !flags.contains(PTEFlags::READABLE)
&& !flags.contains(PTEFlags::WRITABLE)
&& !flags.contains(PTEFlags::EXECUTABLE)
{
attr.insert(Self::PAGE_TABLE);
}