|
@@ -216,6 +216,7 @@ void Region::remap_page(size_t index)
|
|
pte.set_writable(false);
|
|
pte.set_writable(false);
|
|
else
|
|
else
|
|
pte.set_writable(is_writable());
|
|
pte.set_writable(is_writable());
|
|
|
|
+ pte.set_execute_disabled(!is_executable());
|
|
pte.set_user_allowed(is_user_accessible());
|
|
pte.set_user_allowed(is_user_accessible());
|
|
m_page_directory->flush(page_vaddr);
|
|
m_page_directory->flush(page_vaddr);
|
|
#ifdef MM_DEBUG
|
|
#ifdef MM_DEBUG
|
|
@@ -264,6 +265,7 @@ void Region::map(PageDirectory& page_directory)
|
|
pte.set_writable(false);
|
|
pte.set_writable(false);
|
|
else
|
|
else
|
|
pte.set_writable(is_writable());
|
|
pte.set_writable(is_writable());
|
|
|
|
+ pte.set_execute_disabled(!is_executable());
|
|
} else {
|
|
} else {
|
|
pte.set_physical_page_base(0);
|
|
pte.set_physical_page_base(0);
|
|
pte.set_present(false);
|
|
pte.set_present(false);
|