diff options
author | dt <dt@FreeBSD.org> | 1999-08-12 18:04:39 +0000 |
---|---|---|
committer | dt <dt@FreeBSD.org> | 1999-08-12 18:04:39 +0000 |
commit | 28a96b82355be00c7c216e2451bbf2c1484262df (patch) | |
tree | 5c59d5684e22d24acc6c5bdebc8c5b395bb29cdc /sys/nfsclient/nfs_bio.c | |
parent | a3c71888d57c17eeaa86a8573b21564c8709346a (diff) | |
download | FreeBSD-src-28a96b82355be00c7c216e2451bbf2c1484262df.zip FreeBSD-src-28a96b82355be00c7c216e2451bbf2c1484262df.tar.gz |
nfs_getcacheblk() can return 0 if the mount is interruptible. It need to be
checked by the caller.
Broken in: rev. 1.70 (1999/05/02)
Diffstat (limited to 'sys/nfsclient/nfs_bio.c')
-rw-r--r-- | sys/nfsclient/nfs_bio.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/nfsclient/nfs_bio.c b/sys/nfsclient/nfs_bio.c index ec593d8..90f19f2 100644 --- a/sys/nfsclient/nfs_bio.c +++ b/sys/nfsclient/nfs_bio.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs_bio.c 8.9 (Berkeley) 3/30/95 - * $Id: nfs_bio.c,v 1.73 1999/06/16 23:27:46 mckusick Exp $ + * $Id: nfs_bio.c,v 1.74 1999/06/26 02:46:29 mckusick Exp $ */ @@ -802,6 +802,8 @@ again: bcount = on; bp = nfs_getcacheblk(vp, lbn, bcount, p); + if (!bp) + return (EINTR); save = bp->b_flags & B_CACHE; np->n_size = uio->uio_offset + n; @@ -821,6 +823,8 @@ again: if ((off_t)(lbn + 1) * biosize > np->n_size) bcount = np->n_size - (off_t)lbn * biosize; bp = nfs_getcacheblk(vp, lbn, bcount, p); + if (!bp) + return (EINTR); } /* |