summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_proc.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2008-12-29 12:45:11 +0000
committerkib <kib@FreeBSD.org>2008-12-29 12:45:11 +0000
commitbd5d614be80b38952e55e5516853af28f99d108d (patch)
tree3e48d98f96707e37fafe396ec8c27fa0b15ef680 /sys/kern/kern_proc.c
parent76cd718eec26d0dbb71704e2a179ab96d9c6527d (diff)
downloadFreeBSD-src-bd5d614be80b38952e55e5516853af28f99d108d.zip
FreeBSD-src-bd5d614be80b38952e55e5516853af28f99d108d.tar.gz
vm_map_lock_read() does not increment map->timestamp, so we should
compare map->timestamp with saved timestamp after map read lock is reacquired, not with saved timestamp + 1. The only consequence of the +1 was unconditional lookup of the next map entry, though. Tested by: pho Approved by: des MFC after: 2 weeks
Diffstat (limited to 'sys/kern/kern_proc.c')
-rw-r--r--sys/kern/kern_proc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c
index 9c6225f..3d994ba 100644
--- a/sys/kern/kern_proc.c
+++ b/sys/kern/kern_proc.c
@@ -1500,7 +1500,7 @@ sysctl_kern_proc_ovmmap(SYSCTL_HANDLER_ARGS)
vm_map_lock_read(map);
if (error)
break;
- if (last_timestamp + 1 != map->timestamp) {
+ if (last_timestamp != map->timestamp) {
vm_map_lookup_entry(map, addr - 1, &tmp_entry);
entry = tmp_entry;
}
@@ -1677,7 +1677,7 @@ sysctl_kern_proc_vmmap(SYSCTL_HANDLER_ARGS)
vm_map_lock_read(map);
if (error)
break;
- if (last_timestamp + 1 != map->timestamp) {
+ if (last_timestamp != map->timestamp) {
vm_map_lookup_entry(map, addr - 1, &tmp_entry);
entry = tmp_entry;
}
OpenPOWER on IntegriCloud