Date: Mon, 20 Nov 2006 04:14:23 +0000 (UTC) From: Mohan Srinivasan <mohans@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/nfsclient nfs.h nfs_socket.c Message-ID: <200611200414.kAK4EN1T032693@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
mohans 2006-11-20 04:14:23 UTC FreeBSD src repository Modified files: sys/nfsclient nfs.h nfs_socket.c Log: 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 Revision Changes Path 1.97 +1 -1 src/sys/nfsclient/nfs.h 1.146 +39 -30 src/sys/nfsclient/nfs_socket.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611200414.kAK4EN1T032693>