diff options
author | dyson <dyson@FreeBSD.org> | 1997-12-01 18:41:08 +0000 |
---|---|---|
committer | dyson <dyson@FreeBSD.org> | 1997-12-01 18:41:08 +0000 |
commit | ba00c38faa8954b1525941befa35bf9312aedb85 (patch) | |
tree | da866bf29b1cb51c3a1d3ed23f82bc280789b98c /sys/kern/vfs_aio.c | |
parent | 86b96f64231941c0f4cdf59e7bdf84606c193708 (diff) | |
download | FreeBSD-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.c | 3 |
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--; |