freebsd-dev/sys/nfsclient
Mohan Srinivasan a18c4dc336 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
2006-11-20 04:14:23 +00:00
..
bootp_subr.c honor nolockd flag in root mount options 2006-11-07 18:02:45 +00:00
krpc_subr.c MFp4: use the function to fix the packet header length instead of rolling 2005-03-16 08:13:08 +00:00
krpc.h
nfs_bio.c Introduce a field to struct vm_page for storing flags that are 2006-08-09 17:43:27 +00:00
nfs_diskless.c There is a consensus that ifaddr.ifa_addr should never be NULL, 2006-06-29 19:22:05 +00:00
nfs_lock.c Fix typos in comment. 2006-08-16 23:53:05 +00:00
nfs_lock.h For reasons unknown, the nfs locking code used a fifo to send requests to 2004-12-06 08:31:32 +00:00
nfs_nfsiod.c Since NFSv4 is not SMP safe, nfsiod needs to acquire Giant for NFSv4 mounts 2006-05-24 23:06:50 +00:00
nfs_node.c vfs_hash_insert() vputs() the losing vnode before returning, in the event of 2006-11-16 23:03:46 +00:00
nfs_socket.c 1) Fix up locking in nfs_up() and nfs_down. 2006-11-20 04:14:23 +00:00
nfs_subs.c Fixes up the handling of shared vnode lock lookups in the NFS client, 2006-09-13 18:39:09 +00:00
nfs_vfsops.c First part of a little cleanup in the calendar/timezone/RTC handling. 2006-10-02 12:59:59 +00:00
nfs_vnops.c Fix to readdir+ reply handling. When inserting an entry into the namecache, 2006-11-16 23:02:37 +00:00
nfs.h 1) Fix up locking in nfs_up() and nfs_down. 2006-11-20 04:14:23 +00:00
nfsargs.h Fix a serious deadlock with the NFS client. Given a large enough 2005-06-10 23:50:41 +00:00
nfsdiskless.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
nfsm_subs.h fix a problem with XID re-use when a server returns NFSERR_JUKEBOX. 2005-11-21 18:39:18 +00:00
nfsmount.h Refactor the NFS over UDP retransmit timeout estimation logic to allow 2006-05-23 18:33:58 +00:00
nfsnode.h Fixes up the handling of shared vnode lock lookups in the NFS client, 2006-09-13 18:39:09 +00:00
nfsstats.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
nlminfo.h - Fix leak of struct nlminfo on process exit. 2005-10-26 07:18:37 +00:00