summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/kernel')
-rw-r--r--src/core/hle/kernel/k_page_table_base.cpp11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/core/hle/kernel/k_page_table_base.cpp b/src/core/hle/kernel/k_page_table_base.cpp
index 2b5e77ccf..6691586ed 100644
--- a/src/core/hle/kernel/k_page_table_base.cpp
+++ b/src/core/hle/kernel/k_page_table_base.cpp
@@ -5678,15 +5678,8 @@ Result KPageTableBase::Operate(PageLinkedList* page_list, KProcessAddress virt_a
5678 case OperationType::ChangePermissions: 5678 case OperationType::ChangePermissions:
5679 case OperationType::ChangePermissionsAndRefresh: 5679 case OperationType::ChangePermissionsAndRefresh:
5680 case OperationType::ChangePermissionsAndRefreshAndFlush: { 5680 case OperationType::ChangePermissionsAndRefreshAndFlush: {
5681 const bool read = True(properties.perm & Kernel::KMemoryPermission::UserRead); 5681 m_memory->ProtectRegion(*m_impl, virt_addr, num_pages * PageSize,
5682 const bool write = True(properties.perm & Kernel::KMemoryPermission::UserWrite); 5682 ConvertToMemoryPermission(properties.perm));
5683 // todo: this doesn't really belong here and should go into m_memory to handle rasterizer
5684 // access todo: ignore exec on non-direct-mapped case
5685 const bool exec = True(properties.perm & Kernel::KMemoryPermission::UserExecute);
5686 if (Settings::IsFastmemEnabled()) {
5687 m_system.DeviceMemory().buffer.Protect(GetInteger(virt_addr), num_pages * PageSize,
5688 read, write, exec);
5689 }
5690 R_SUCCEED(); 5683 R_SUCCEED();
5691 } 5684 }
5692 default: 5685 default: