In dmio_read(), make sure to set DMIO_STATE_READ_WAIT in ds->ds_flags
before going to sleep.
This commit is contained in:
parent
9adea725c5
commit
58c736d46f
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: dmover_io.c,v 1.8 2003/03/21 21:13:55 dsl Exp $ */
|
||||
/* $NetBSD: dmover_io.c,v 1.9 2003/05/30 11:37:47 scw Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002 Wasabi Systems, Inc.
|
||||
|
@ -55,7 +55,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: dmover_io.c,v 1.8 2003/03/21 21:13:55 dsl Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: dmover_io.c,v 1.9 2003/05/30 11:37:47 scw Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/queue.h>
|
||||
|
@ -315,6 +315,7 @@ dmio_read(struct file *fp, off_t *offp, struct uio *uio,
|
|||
error = progress ? 0 : EWOULDBLOCK;
|
||||
goto out;
|
||||
}
|
||||
ds->ds_flags |= DMIO_STATE_READ_WAIT;
|
||||
error = ltsleep(&ds->ds_complete,
|
||||
PRIBIO | PCATCH, "dmvrrd", 0,
|
||||
&ds->ds_slock);
|
||||
|
|
Loading…
Reference in New Issue