diff options
Diffstat (limited to 'sys/nfsclient/nfs_socket.c')
-rw-r--r-- | sys/nfsclient/nfs_socket.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/nfsclient/nfs_socket.c b/sys/nfsclient/nfs_socket.c index 43c28d3..9c82759 100644 --- a/sys/nfsclient/nfs_socket.c +++ b/sys/nfsclient/nfs_socket.c @@ -161,6 +161,8 @@ nfs_connect(struct nfsmount *nmp, struct nfsreq *rep) struct sockaddr *saddr; struct thread *td = &thread0; /* only used for socreate and sobind */ + GIANT_REQUIRED; /* XXX until socket locking done */ + nmp->nm_so = NULL; saddr = nmp->nm_nam; error = socreate(saddr->sa_family, &nmp->nm_so, nmp->nm_sotype, @@ -377,6 +379,8 @@ nfs_disconnect(struct nfsmount *nmp) { struct socket *so; + GIANT_REQUIRED; /* XXX until socket locking done */ + if (nmp->nm_so) { so = nmp->nm_so; nmp->nm_so = NULL; @@ -411,6 +415,8 @@ nfs_send(struct socket *so, struct sockaddr *nam, struct mbuf *top, struct sockaddr *sendnam; int error, soflags, flags; + GIANT_REQUIRED; /* XXX until socket locking done */ + KASSERT(rep, ("nfs_send: called with rep == NULL")); if (rep->r_flags & R_SOFTTERM) { @@ -484,6 +490,8 @@ nfs_receive(struct nfsreq *rep, struct sockaddr **aname, struct mbuf **mp) int error, sotype, rcvflg; struct thread *td = curthread; /* XXX */ + GIANT_REQUIRED; /* XXX until socket locking done */ + /* * Set up arguments for soreceive() */ |