Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/subr_asan.c
Show First 20 Lines • Show All 251 Lines • ▼ Show 20 Lines | |||||
* o kasan_mark(addr, size, size, 0). This marks the entire buffer as valid. | * o kasan_mark(addr, size, size, 0). This marks the entire buffer as valid. | ||||
*/ | */ | ||||
void | void | ||||
kasan_mark(const void *addr, size_t size, size_t redzsize, uint8_t code) | kasan_mark(const void *addr, size_t size, size_t redzsize, uint8_t code) | ||||
{ | { | ||||
size_t i, n, redz; | size_t i, n, redz; | ||||
int8_t *shad; | int8_t *shad; | ||||
if (__predict_false(!kasan_enabled)) | |||||
return; | |||||
markj: I think this bit could be committed as-is. | |||||
kevansAuthorUnsubmitted Done Inline ActionsLanded early in f2963b530e17 kevans: Landed early in f2963b530e17 | |||||
if ((vm_offset_t)addr >= DMAP_MIN_ADDRESS && | if ((vm_offset_t)addr >= DMAP_MIN_ADDRESS && | ||||
(vm_offset_t)addr < DMAP_MAX_ADDRESS) | (vm_offset_t)addr < DMAP_MAX_ADDRESS) | ||||
return; | return; | ||||
KASSERT((vm_offset_t)addr >= VM_MIN_KERNEL_ADDRESS && | KASSERT((vm_offset_t)addr >= VM_MIN_KERNEL_ADDRESS && | ||||
(vm_offset_t)addr < VM_MAX_KERNEL_ADDRESS, | (vm_offset_t)addr < VM_MAX_KERNEL_ADDRESS, | ||||
("%s: invalid address %p", __func__, addr)); | ("%s: invalid address %p", __func__, addr)); | ||||
KASSERT((vm_offset_t)addr % KASAN_SHADOW_SCALE == 0, | KASSERT((vm_offset_t)addr % KASAN_SHADOW_SCALE == 0, | ||||
▲ Show 20 Lines • Show All 946 Lines • Show Last 20 Lines |
I think this bit could be committed as-is.