Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/kern_proc.c
Show First 20 Lines • Show All 2,319 Lines • ▼ Show 20 Lines | sysctl_kern_proc_ovmmap(SYSCTL_HANDLER_ARGS) | ||||
vm_map_lock_read(map); | vm_map_lock_read(map); | ||||
VM_MAP_ENTRY_FOREACH(entry, map) { | VM_MAP_ENTRY_FOREACH(entry, map) { | ||||
vm_object_t obj, tobj, lobj; | vm_object_t obj, tobj, lobj; | ||||
vm_offset_t addr; | vm_offset_t addr; | ||||
if (entry->eflags & MAP_ENTRY_IS_SUB_MAP) | if (entry->eflags & MAP_ENTRY_IS_SUB_MAP) | ||||
continue; | continue; | ||||
bzero(kve, sizeof(*kve)); | bzero(kve, sizeof(*kve)); | ||||
rwatson: Surprising whitespace | |||||
kve->kve_structsize = sizeof(*kve); | kve->kve_structsize = sizeof(*kve); | ||||
kve->kve_private_resident = 0; | kve->kve_private_resident = 0; | ||||
obj = entry->object.vm_object; | obj = entry->object.vm_object; | ||||
if (obj != NULL) { | if (obj != NULL) { | ||||
VM_OBJECT_RLOCK(obj); | VM_OBJECT_RLOCK(obj); | ||||
if (obj->shadow_count == 1) | if (obj->shadow_count == 1) | ||||
kve->kve_private_resident = | kve->kve_private_resident = | ||||
▲ Show 20 Lines • Show All 172 Lines • ▼ Show 20 Lines | kern_proc_vmmap_out(struct proc *p, struct sbuf *sb, ssize_t maxlen, int flags) | ||||
char *fullpath, *freepath; | char *fullpath, *freepath; | ||||
struct kinfo_vmentry *kve; | struct kinfo_vmentry *kve; | ||||
struct ucred *cred; | struct ucred *cred; | ||||
struct vnode *vp; | struct vnode *vp; | ||||
struct vmspace *vm; | struct vmspace *vm; | ||||
vm_offset_t addr; | vm_offset_t addr; | ||||
unsigned int last_timestamp; | unsigned int last_timestamp; | ||||
int error; | int error; | ||||
bool super; | bool guard, super; | ||||
PROC_LOCK_ASSERT(p, MA_OWNED); | PROC_LOCK_ASSERT(p, MA_OWNED); | ||||
_PHOLD(p); | _PHOLD(p); | ||||
PROC_UNLOCK(p); | PROC_UNLOCK(p); | ||||
vm = vmspace_acquire_ref(p); | vm = vmspace_acquire_ref(p); | ||||
if (vm == NULL) { | if (vm == NULL) { | ||||
PRELE(p); | PRELE(p); | ||||
▲ Show 20 Lines • Show All 53 Lines • ▼ Show 20 Lines | if (entry->eflags & MAP_ENTRY_NOCOREDUMP) | ||||
kve->kve_flags |= KVME_FLAG_NOCOREDUMP; | kve->kve_flags |= KVME_FLAG_NOCOREDUMP; | ||||
if (entry->eflags & MAP_ENTRY_GROWS_UP) | if (entry->eflags & MAP_ENTRY_GROWS_UP) | ||||
kve->kve_flags |= KVME_FLAG_GROWS_UP; | kve->kve_flags |= KVME_FLAG_GROWS_UP; | ||||
if (entry->eflags & MAP_ENTRY_GROWS_DOWN) | if (entry->eflags & MAP_ENTRY_GROWS_DOWN) | ||||
kve->kve_flags |= KVME_FLAG_GROWS_DOWN; | kve->kve_flags |= KVME_FLAG_GROWS_DOWN; | ||||
if (entry->eflags & MAP_ENTRY_USER_WIRED) | if (entry->eflags & MAP_ENTRY_USER_WIRED) | ||||
kve->kve_flags |= KVME_FLAG_USER_WIRED; | kve->kve_flags |= KVME_FLAG_USER_WIRED; | ||||
guard = (entry->eflags & MAP_ENTRY_GUARD) != 0; | |||||
last_timestamp = map->timestamp; | last_timestamp = map->timestamp; | ||||
vm_map_unlock_read(map); | vm_map_unlock_read(map); | ||||
freepath = NULL; | freepath = NULL; | ||||
fullpath = ""; | fullpath = ""; | ||||
if (lobj != NULL) { | if (lobj != NULL) { | ||||
kve->kve_type = vm_object_kvme_type(lobj, &vp); | kve->kve_type = vm_object_kvme_type(lobj, &vp); | ||||
if (vp != NULL) | if (vp != NULL) | ||||
Show All 20 Lines | if (lobj != NULL) { | ||||
kve->kve_vn_rdev = va.va_rdev; | kve->kve_vn_rdev = va.va_rdev; | ||||
kve->kve_vn_rdev_freebsd11 = | kve->kve_vn_rdev_freebsd11 = | ||||
kve->kve_vn_rdev; /* truncate */ | kve->kve_vn_rdev; /* truncate */ | ||||
kve->kve_status = KF_ATTR_VALID; | kve->kve_status = KF_ATTR_VALID; | ||||
} | } | ||||
vput(vp); | vput(vp); | ||||
} | } | ||||
} else { | } else { | ||||
kve->kve_type = KVME_TYPE_NONE; | kve->kve_type = guard ? KVME_TYPE_GUARD : | ||||
KVME_TYPE_NONE; | |||||
kve->kve_ref_count = 0; | kve->kve_ref_count = 0; | ||||
kve->kve_shadow_count = 0; | kve->kve_shadow_count = 0; | ||||
} | } | ||||
strlcpy(kve->kve_path, fullpath, sizeof(kve->kve_path)); | strlcpy(kve->kve_path, fullpath, sizeof(kve->kve_path)); | ||||
if (freepath != NULL) | if (freepath != NULL) | ||||
free(freepath, M_TEMP); | free(freepath, M_TEMP); | ||||
▲ Show 20 Lines • Show All 737 Lines • Show Last 20 Lines |
Surprising whitespace