Changeset 4b1c7c6f in mainline for kernel/arch/arm32/include/arch/mm/page_armv4.h
- Timestamp:
- 2018-03-16T20:57:16Z (6 years ago)
- Children:
- 6be2c13
- Parents:
- 973be387
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-16 20:51:59)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-16 20:57:16)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/include/arch/mm/page_armv4.h
r973be387 r4b1c7c6f 138 138 int np = (p->descriptor_type == PTE_DESCRIPTOR_NOT_PRESENT); 139 139 140 return (np << PAGE_ PRESENT_SHIFT) | (1 << PAGE_USER_SHIFT) |141 (1 << PAGE_ READ_SHIFT) | (1 << PAGE_WRITE_SHIFT) |140 return (np << PAGE_NOT_PRESENT_SHIFT) | (1 << PAGE_USER_SHIFT) | 141 (1 << PAGE_WRITE_SHIFT) | 142 142 (1 << PAGE_EXEC_SHIFT) | (1 << PAGE_CACHEABLE_SHIFT); 143 143 } … … 156 156 int ap = p->access_permission_0; 157 157 158 return ((dt == PTE_DESCRIPTOR_NOT_PRESENT) << PAGE_PRESENT_SHIFT) | 159 ((ap == PTE_AP_USER_RO_KERNEL_RW) << PAGE_READ_SHIFT) | 160 ((ap == PTE_AP_USER_RW_KERNEL_RW) << PAGE_READ_SHIFT) | 158 return ((dt == PTE_DESCRIPTOR_NOT_PRESENT) << PAGE_NOT_PRESENT_SHIFT) | 161 159 ((ap == PTE_AP_USER_RW_KERNEL_RW) << PAGE_WRITE_SHIFT) | 162 160 ((ap != PTE_AP_USER_NO_KERNEL_RW) << PAGE_USER_SHIFT) | 163 ((ap == PTE_AP_USER_NO_KERNEL_RW) << PAGE_READ_SHIFT) |164 161 ((ap == PTE_AP_USER_NO_KERNEL_RW) << PAGE_WRITE_SHIFT) | 165 162 (1 << PAGE_EXEC_SHIFT) | … … 220 217 221 218 if (flags & PAGE_USER) { 222 if (flags & PAGE_READ) { 219 if (flags & PAGE_WRITE) { 220 p->access_permission_0 = p->access_permission_1 = 221 p->access_permission_2 = p->access_permission_3 = 222 PTE_AP_USER_RW_KERNEL_RW; 223 } else { 223 224 p->access_permission_0 = p->access_permission_1 = 224 225 p->access_permission_2 = p->access_permission_3 = 225 226 PTE_AP_USER_RO_KERNEL_RW; 226 227 } 227 if (flags & PAGE_WRITE) {228 p->access_permission_0 = p->access_permission_1 =229 p->access_permission_2 = p->access_permission_3 =230 PTE_AP_USER_RW_KERNEL_RW;231 }232 228 } 233 229 }
Note:
See TracChangeset
for help on using the changeset viewer.