diff options
author | kib <kib@FreeBSD.org> | 2008-12-10 16:11:09 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2008-12-10 16:11:09 +0000 |
commit | ca4d4f349489a6d5a1a76fe9b0dc076495afa554 (patch) | |
tree | 51d20f0423aa0cfb60f071e2dd84a1a6d2b7bad1 /sys/fs/procfs | |
parent | 75eeed4f1f01cc78a826c4ab15d1ca640ac8f757 (diff) | |
download | FreeBSD-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/procfs')
-rw-r--r-- | sys/fs/procfs/procfs_map.c | 3 |
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 |