diff options
author | dt <dt@FreeBSD.org> | 1999-04-14 18:51:52 +0000 |
---|---|---|
committer | dt <dt@FreeBSD.org> | 1999-04-14 18:51:52 +0000 |
commit | 490abdf54dd38f7601522e418cd309fa280a102a (patch) | |
tree | 9fe98191bbc407a9660ed910b1103097bf1cd61c /sys/kern | |
parent | 4200d87cda566b1b87573a43f2fbc8ce6f70957d (diff) | |
download | FreeBSD-src-490abdf54dd38f7601522e418cd309fa280a102a.zip FreeBSD-src-490abdf54dd38f7601522e418cd309fa280a102a.tar.gz |
getnewbuf(): check return value from tsleep(). Interruptible NFS may pass
PCATCH to slpflag.
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/vfs_bio.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 58d463b..8a8d3a4 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -11,7 +11,7 @@ * 2. Absolutely no warranty of function or purpose is made by the author * John S. Dyson. * - * $Id: vfs_bio.c,v 1.204 1999/04/05 19:38:30 julian Exp $ + * $Id: vfs_bio.c,v 1.205 1999/04/07 02:41:54 alc Exp $ */ /* @@ -1391,12 +1391,9 @@ dosleep: ++rushjob; needsbuffer |= flags; while (needsbuffer & flags) { - tsleep( - &needsbuffer, - (PRIBIO + 4) | slpflag, - "newbuf", - slptimeo - ); + if (tsleep(&needsbuffer, (PRIBIO + 4) | slpflag, + "newbuf", slptimeo)) + return (NULL); } } else { /* |