Get rid of the 'chan' from softc structure and use the latter

directly as sleep channel.

PR:		kern/174684
Submitted by:	jmg
MFC after:	2 weeks
This commit is contained in:
Xin LI 2014-02-27 21:41:52 +00:00
parent 4170452de3
commit def7eaf147
3 changed files with 3 additions and 5 deletions

View File

@ -248,7 +248,6 @@ struct tws_softc {
struct mtx io_lock; /* IO lock */
struct tws_ioctl_lock ioctl_lock; /* ioctl lock */
u_int32_t seq_id; /* Sequence id */
void *chan; /* IOCTL req wait channel */
struct tws_circular_q aen_q; /* aen q */
struct tws_circular_q trace_q; /* trace q */
struct tws_stats stats; /* I/O stats */

View File

@ -1297,7 +1297,7 @@ tws_reinit(void *arg)
tws_turn_on_interrupts(sc);
wakeup_one(sc->chan);
wakeup_one(sc);
}

View File

@ -103,8 +103,7 @@ tws_passthru(struct tws_softc *sc, void *buf)
do {
req = tws_get_request(sc, TWS_REQ_TYPE_PASSTHRU);
if ( !req ) {
sc->chan = (void *)sc;
error = tsleep(sc->chan, 0, "tws_sleep", TWS_IOCTL_TIMEOUT*hz);
error = tsleep(sc, 0, "tws_sleep", TWS_IOCTL_TIMEOUT*hz);
if ( error == EWOULDBLOCK ) {
return(ETIMEDOUT);
}
@ -203,7 +202,7 @@ out_data:
//
req->state = TWS_REQ_STATE_FREE;
wakeup_one(sc->chan);
wakeup_one(sc);
return(error);
}