summaryrefslogtreecommitdiffstats
path: root/sys/fs
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2008-12-10 16:11:09 +0000
committerkib <kib@FreeBSD.org>2008-12-10 16:11:09 +0000
commitca4d4f349489a6d5a1a76fe9b0dc076495afa554 (patch)
tree51d20f0423aa0cfb60f071e2dd84a1a6d2b7bad1 /sys/fs
parent75eeed4f1f01cc78a826c4ab15d1ca640ac8f757 (diff)
downloadFreeBSD-src-ca4d4f349489a6d5a1a76fe9b0dc076495afa554.zip
FreeBSD-src-ca4d4f349489a6d5a1a76fe9b0dc076495afa554.tar.gz
Relock user map earlier, to have the lock held when break leaves the
loop earlier due to sbuf error. Pointy hat to: me Submitted by: dchagin
Diffstat (limited to 'sys/fs')
-rw-r--r--sys/fs/procfs/procfs_map.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/fs/procfs/procfs_map.c b/sys/fs/procfs/procfs_map.c
index 9e36b54..d27415b 100644
--- a/sys/fs/procfs/procfs_map.c
+++ b/sys/fs/procfs/procfs_map.c
@@ -219,12 +219,11 @@ procfs_doprocmap(PFS_FILL_ARGS)
if (freepath != NULL)
free(freepath, M_TEMP);
-
+ vm_map_lock_read(map);
if (error == -1) {
error = 0;
break;
}
- vm_map_lock_read(map);
if (last_timestamp + 1 != map->timestamp) {
/*
* Look again for the entry because the map was
OpenPOWER on IntegriCloud