summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_aio.c
diff options
context:
space:
mode:
authordyson <dyson@FreeBSD.org>1997-12-01 18:41:08 +0000
committerdyson <dyson@FreeBSD.org>1997-12-01 18:41:08 +0000
commitba00c38faa8954b1525941befa35bf9312aedb85 (patch)
treeda866bf29b1cb51c3a1d3ed23f82bc280789b98c /sys/kern/vfs_aio.c
parent86b96f64231941c0f4cdf59e7bdf84606c193708 (diff)
downloadFreeBSD-src-ba00c38faa8954b1525941befa35bf9312aedb85.zip
FreeBSD-src-ba00c38faa8954b1525941befa35bf9312aedb85.tar.gz
Fix a problem when creating a new kernel thread. In some cases, aio_read
or aio_write can return the pid of the new thread. This is due to the way that return values from system calls being passed by side-effect in the proc structure now. This commit fixes the problem with aio_read and aio_write.
Diffstat (limited to 'sys/kern/vfs_aio.c')
-rw-r--r--sys/kern/vfs_aio.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/vfs_aio.c b/sys/kern/vfs_aio.c
index e71d4ed..efa77c7 100644
--- a/sys/kern/vfs_aio.c
+++ b/sys/kern/vfs_aio.c
@@ -13,7 +13,7 @@
* bad that happens because of using this software isn't the responsibility
* of the author. This software is distributed AS-IS.
*
- * $Id: vfs_aio.c,v 1.16 1997/11/30 23:21:08 dyson Exp $
+ * $Id: vfs_aio.c,v 1.17 1997/12/01 07:01:45 dyson Exp $
*/
/*
@@ -1350,6 +1350,7 @@ retryproc:
num_aio_resv_start++;
if ((error = aio_newproc()) == 0) {
num_aio_resv_start--;
+ p->p_retval[0] = 0;
goto retryproc;
}
num_aio_resv_start--;
OpenPOWER on IntegriCloud