diff options
author | mohans <mohans@FreeBSD.org> | 2006-11-20 04:14:23 +0000 |
---|---|---|
committer | mohans <mohans@FreeBSD.org> | 2006-11-20 04:14:23 +0000 |
commit | 4800f71e236b016c6ef5e788d256b822e8218ced (patch) | |
tree | 22448b979900be4a7abc581a7184beaa4c286b09 /sys/kern/kern_resource.c | |
parent | e58221ee6f2ded07307d488ff72b3c7048cdffb2 (diff) | |
download | FreeBSD-src-4800f71e236b016c6ef5e788d256b822e8218ced.zip FreeBSD-src-4800f71e236b016c6ef5e788d256b822e8218ced.tar.gz |
1) Fix up locking in nfs_up() and nfs_down.
2) Reduce the acquisitions of the Giant lock in the nfs_socket.c paths significantly.
- We don't need to acquire Giant before tsleeping on lbolt anymore,
since jhb specialcased lbolt handling in msleep.
- nfs_up() needs to acquire Giant only if printing the "server up"
message.
- nfs_timer() held Giant for the duration of the NFS timer processing,
just because the printing of the message in nfs_down() needed it
(and we acquire other locks in nfs_timer()). The acquisition of
Giant is moved down into nfs_down() now, reducing the time Giant is
held in that path.
Reported by: Kris Kennaway
Diffstat (limited to 'sys/kern/kern_resource.c')
0 files changed, 0 insertions, 0 deletions