Changes in kernel/generic/src/syscall/copy.c [b3f8fb7:1479562] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/syscall/copy.c
rb3f8fb7 r1479562 68 68 if (!KERNEL_ADDRESS_SPACE_SHADOWED) { 69 69 if (overlaps((uintptr_t) uspace_src, size, 70 KERNEL_ADDRESS_SPACE_START, KERNEL_ADDRESS_SPACE_END-KERNEL_ADDRESS_SPACE_START)) { 70 KERNEL_ADDRESS_SPACE_START, 71 KERNEL_ADDRESS_SPACE_END - KERNEL_ADDRESS_SPACE_START)) { 71 72 /* 72 73 * The userspace source block conflicts with kernel address space. … … 75 76 } 76 77 } 78 79 #ifdef ADDRESS_SPACE_HOLE_START 80 /* 81 * Check whether the address is outside the address space hole. 82 */ 83 if (overlaps((uintptr_t) uspace_src, size, ADDRESS_SPACE_HOLE_START, 84 ADDRESS_SPACE_HOLE_END - ADDRESS_SPACE_HOLE_START)) 85 return EPERM; 86 #endif 77 87 78 88 ipl = interrupts_disable(); … … 109 119 if (!KERNEL_ADDRESS_SPACE_SHADOWED) { 110 120 if (overlaps((uintptr_t) uspace_dst, size, 111 KERNEL_ADDRESS_SPACE_START, KERNEL_ADDRESS_SPACE_END-KERNEL_ADDRESS_SPACE_START)) { 121 KERNEL_ADDRESS_SPACE_START, 122 KERNEL_ADDRESS_SPACE_END - KERNEL_ADDRESS_SPACE_START)) { 112 123 /* 113 124 * The userspace destination block conflicts with kernel address space. … … 116 127 } 117 128 } 129 130 #ifdef ADDRESS_SPACE_HOLE_START 131 /* 132 * Check whether the address is outside the address space hole. 133 */ 134 if (overlaps((uintptr_t) uspace_dst, size, ADDRESS_SPACE_HOLE_START, 135 ADDRESS_SPACE_HOLE_END - ADDRESS_SPACE_HOLE_START)) 136 return EPERM; 137 #endif 118 138 119 139 ipl = interrupts_disable();
Note:
See TracChangeset
for help on using the changeset viewer.