summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_aio.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2002-01-20 00:52:44 +0000
committeralc <alc@FreeBSD.org>2002-01-20 00:52:44 +0000
commit60143f00ec03178c263110a642eea2a2f355a330 (patch)
treea3e6f393bf18bc7b6a9e23b618fd61efe322de6d /sys/kern/vfs_aio.c
parent774dd0c9efddfea69a00b87e34192323deff70c9 (diff)
downloadFreeBSD-src-60143f00ec03178c263110a642eea2a2f355a330.zip
FreeBSD-src-60143f00ec03178c263110a642eea2a2f355a330.tar.gz
o Revision 1.99 ("KSE Milestone 2") left the aio daemons
sleeping on a process object but changed the corresponding wakeup()s to the thread object. The result was that non-raw aio ops waited for an aio daemon to timeout before action was taken. Now, we sleep on the thread object. PR: kern/34016
Diffstat (limited to 'sys/kern/vfs_aio.c')
-rw-r--r--sys/kern/vfs_aio.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/vfs_aio.c b/sys/kern/vfs_aio.c
index b27a903..55a77fe 100644
--- a/sys/kern/vfs_aio.c
+++ b/sys/kern/vfs_aio.c
@@ -998,8 +998,8 @@ aio_daemon(void *uproc)
* If daemon is inactive for a long time, allow it to exit,
* thereby freeing resources.
*/
- if (((aiop->aiothreadflags & AIOP_SCHED) == 0) && tsleep(mycp,
- PRIBIO, "aiordy", aiod_lifetime)) {
+ if ((aiop->aiothreadflags & AIOP_SCHED) == 0 &&
+ tsleep(aiop->aiothread, PRIBIO, "aiordy", aiod_lifetime)) {
s = splnet();
if ((TAILQ_FIRST(&aio_jobs) == NULL) &&
(TAILQ_FIRST(&aiop->jobtorun) == NULL)) {
OpenPOWER on IntegriCloud