Convert to use the new bufq* functions for dealing with buffer
queues.
This commit is contained in:
parent
6c951b4441
commit
e74a2bdcb0
@ -14,7 +14,7 @@
|
||||
*
|
||||
* Ported to run under 386BSD by Julian Elischer (julian@tfs.com) Sept 1992
|
||||
*
|
||||
* $Id: cd.c,v 1.84 1997/09/02 20:06:30 bde Exp $
|
||||
* $Id: cd.c,v 1.85 1997/09/07 15:06:06 joerg Exp $
|
||||
*/
|
||||
|
||||
#include "opt_bounce.h"
|
||||
@ -179,7 +179,7 @@ cdattach(struct scsi_link *sc_link)
|
||||
unit = sc_link->dev_unit;
|
||||
dp = &(cd->params);
|
||||
|
||||
TAILQ_INIT(&cd->buf_queue);
|
||||
bufq_init(&cd->buf_queue);
|
||||
if (sc_link->opennings > CDOUTSTANDING)
|
||||
sc_link->opennings = CDOUTSTANDING;
|
||||
/*
|
||||
@ -432,7 +432,7 @@ cd_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
/*
|
||||
* Place it in the queue of disk activities for this disk
|
||||
*/
|
||||
TAILQ_INSERT_TAIL(&cd->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&cd->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Tell the device to get going on the transfer if it's
|
||||
@ -494,11 +494,11 @@ cdstart(unit, flags)
|
||||
return; /* give the special that's waiting a chance to run */
|
||||
}
|
||||
|
||||
bp = cd->buf_queue.tqh_first;
|
||||
bp = bufq_first(&cd->buf_queue);
|
||||
if (bp == NULL) { /* yes, an assign */
|
||||
return;
|
||||
}
|
||||
TAILQ_REMOVE( &cd->buf_queue, bp, b_act);
|
||||
bufq_remove(&cd->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Should reject all queued entries if SDEV_MEDIA_LOADED is not true.
|
||||
|
@ -28,7 +28,7 @@
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: od.c,v 1.30 1997/03/24 11:25:01 bde Exp $
|
||||
* $Id: od.c,v 1.31 1997/09/02 20:06:32 bde Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -209,7 +209,7 @@ odattach(struct scsi_link *sc_link)
|
||||
if (sc_link->opennings > ODOUTSTANDING)
|
||||
sc_link->opennings = ODOUTSTANDING;
|
||||
|
||||
TAILQ_INIT(&od->buf_queue);
|
||||
bufq_init(&od->buf_queue);
|
||||
/*
|
||||
* Use the subdriver to request information regarding
|
||||
* the drive. We cannot use interrupts yet, so the
|
||||
@ -520,7 +520,7 @@ od_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
/*
|
||||
* Place it in the queue of disk activities for this disk
|
||||
*/
|
||||
TAILQ_INSERT_TAIL(&od->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&od->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Tell the device to get going on the transfer if it's
|
||||
@ -595,11 +595,11 @@ odstart(u_int32_t unit, u_int32_t flags)
|
||||
/*
|
||||
* See if there is a buf with work for us to do..
|
||||
*/
|
||||
bp = od->buf_queue.tqh_first;
|
||||
bp = bufq_first(&od->buf_queue);
|
||||
if (bp == NULL) { /* yes, an assign */
|
||||
return;
|
||||
}
|
||||
TAILQ_REMOVE( &od->buf_queue, bp, b_act);
|
||||
bufq_remove(&od->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* If the device has become invalid, abort all the
|
||||
|
@ -37,7 +37,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: pt.c,v 1.22 1997/05/21 19:35:10 joerg Exp $
|
||||
* $Id: pt.c,v 1.23 1997/09/02 20:06:32 bde Exp $
|
||||
*/
|
||||
|
||||
#include "opt_bounce.h"
|
||||
@ -104,7 +104,7 @@ ptattach(struct scsi_link *sc_link)
|
||||
{
|
||||
struct scsi_data *pt = sc_link->sd;
|
||||
|
||||
TAILQ_INIT(&pt->buf_queue);
|
||||
bufq_init(&pt->buf_queue);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -155,11 +155,11 @@ ptstart(unit, flags)
|
||||
return;
|
||||
}
|
||||
|
||||
bp = pt->buf_queue.tqh_first;
|
||||
bp = bufq_first(&pt->buf_queue);
|
||||
if (bp == NULL) { /* yes, an assign */
|
||||
return;
|
||||
}
|
||||
TAILQ_REMOVE( &pt->buf_queue, bp, b_act);
|
||||
bufq_remove(&pt->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Fill out the scsi command
|
||||
@ -220,7 +220,7 @@ pt_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
* at the end (a bit silly because we only have one user..
|
||||
* (but it could fork() ))
|
||||
*/
|
||||
TAILQ_INSERT_TAIL( &pt->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&pt->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Tell the device to get going on the transfer if it's
|
||||
|
@ -8,7 +8,7 @@
|
||||
* file.
|
||||
*
|
||||
* Written by Julian Elischer (julian@dialix.oz.au)
|
||||
* $Id: scsi_base.c,v 1.49 1997/07/25 23:25:20 jdp Exp $
|
||||
* $Id: scsi_base.c,v 1.50 1997/09/02 20:06:33 bde Exp $
|
||||
*/
|
||||
|
||||
#include "opt_bounce.h"
|
||||
@ -90,6 +90,7 @@ get_xs(sc_link, flags)
|
||||
printf("cannot allocate scsi xs\n");
|
||||
return (NULL);
|
||||
}
|
||||
callout_handle_init(&xs->timeout_ch);
|
||||
}
|
||||
SC_DEBUG(sc_link, SDEV_DB3, ("returning\n"));
|
||||
xs->sc_link = sc_link;
|
||||
|
@ -14,7 +14,7 @@
|
||||
*
|
||||
* Ported to run under 386BSD by Julian Elischer (julian@tfs.com) Sept 1992
|
||||
*
|
||||
* $Id: scsiconf.h,v 1.55 1997/06/25 19:07:43 tegge Exp $
|
||||
* $Id: scsiconf.h,v 1.56 1997/09/07 15:06:08 joerg Exp $
|
||||
*/
|
||||
#ifndef SCSI_SCSICONF_H
|
||||
#define SCSI_SCSICONF_H 1
|
||||
@ -22,6 +22,7 @@ typedef int boolean;
|
||||
typedef int errval;
|
||||
|
||||
#include <scsi/scsi_all.h>
|
||||
#include <sys/callout.h> /* XXX For ioconf.c */
|
||||
|
||||
/*
|
||||
* The following documentation tries to describe the relationship between the
|
||||
@ -385,6 +386,11 @@ struct scsi_xfer
|
||||
/*84*/ int32_t req_sense_length; /* Explicit request sense length */
|
||||
/*88*/ int32_t status; /* SCSI status */
|
||||
/*100*/ struct scsi_generic cmdstore; /* stash the command in here */
|
||||
/*
|
||||
* Handle for scheduling
|
||||
* command timeouts.
|
||||
*/
|
||||
struct callout_handle timeout_ch;
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -37,7 +37,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: sctarg.c,v 1.20 1997/03/23 06:33:51 bde Exp $
|
||||
* $Id: sctarg.c,v 1.21 1997/09/02 20:06:36 bde Exp $
|
||||
*/
|
||||
|
||||
#include "opt_bounce.h"
|
||||
@ -187,10 +187,10 @@ sctargstart(unit, unused_flags)
|
||||
return;
|
||||
}
|
||||
|
||||
bp = sctarg->buf_queue.tqh_first;
|
||||
bp = bufq_first(&sctarg->buf_queue);
|
||||
if (bp == NULL)
|
||||
return;
|
||||
TAILQ_REMOVE(&sctarg->buf_queue, bp, b_act);
|
||||
bufq_remove(&sctarg->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Fill out the scsi command
|
||||
@ -250,7 +250,7 @@ sctarg_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
/*
|
||||
* Place it at the end of the queue of activities for this device.
|
||||
*/
|
||||
TAILQ_INSERT_TAIL( &sctarg->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&sctarg->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Tell the device to get going on the transfer if it's
|
||||
|
@ -15,7 +15,7 @@
|
||||
*
|
||||
* Ported to run under 386BSD by Julian Elischer (julian@dialix.oz.au) Sept 1992
|
||||
*
|
||||
* $Id: sd.c,v 1.109 1997/09/10 12:31:40 joerg Exp $
|
||||
* $Id: sd.c,v 1.110 1997/09/13 16:12:15 joerg Exp $
|
||||
*/
|
||||
|
||||
#include "opt_bounce.h"
|
||||
@ -185,7 +185,7 @@ sdattach(struct scsi_link *sc_link)
|
||||
if (sc_link->opennings > SDOUTSTANDING)
|
||||
sc_link->opennings = SDOUTSTANDING;
|
||||
|
||||
TAILQ_INIT(&sd->buf_queue);
|
||||
bufq_init(&sd->buf_queue);
|
||||
/*
|
||||
* Use the subdriver to request information regarding
|
||||
* the drive. We cannot use interrupts yet, so the
|
||||
@ -490,9 +490,9 @@ sd_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
* Place it in the queue of disk activities for this disk
|
||||
*/
|
||||
#ifdef SDDISKSORT
|
||||
tqdisksort(&sd->buf_queue, bp);
|
||||
bufq_disksort(&sd->buf_queue, bp);
|
||||
#else
|
||||
TAILQ_INSERT_TAIL(&sd->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&sd->buf_queue, bp);
|
||||
#endif
|
||||
|
||||
/*
|
||||
@ -567,11 +567,11 @@ sdstart(u_int32_t unit, u_int32_t flags)
|
||||
/*
|
||||
* See if there is a buf with work for us to do..
|
||||
*/
|
||||
bp = sd->buf_queue.tqh_first;
|
||||
bp = bufq_first(&sd->buf_queue);
|
||||
if (bp == NULL) { /* yes, an assign */
|
||||
return;
|
||||
}
|
||||
TAILQ_REMOVE(&sd->buf_queue, bp, b_act);
|
||||
bufq_remove(&sd->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* If the device has become invalid, abort all the
|
||||
|
@ -12,7 +12,7 @@
|
||||
* on the understanding that TFS is not responsible for the correct
|
||||
* functioning of this software in any circumstances.
|
||||
*
|
||||
* $Id: st.c,v 1.80 1997/09/02 20:06:38 bde Exp $
|
||||
* $Id: st.c,v 1.81 1997/09/07 10:08:23 joerg Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -228,7 +228,7 @@ stattach(struct scsi_link *sc_link)
|
||||
|
||||
unit = sc_link->dev_unit;
|
||||
|
||||
TAILQ_INIT(&st->buf_queue);
|
||||
bufq_init(&st->buf_queue);
|
||||
/*
|
||||
* Check if the drive is a known criminal and take
|
||||
* Any steps needed to bring it into line
|
||||
@ -816,7 +816,7 @@ st_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
* at the end (a bit silly because we only have on user..
|
||||
* (but it could fork() ))
|
||||
*/
|
||||
TAILQ_INSERT_TAIL(&st->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&st->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* Tell the device to get going on the transfer if it's
|
||||
@ -875,11 +875,11 @@ ststart(unit, flags)
|
||||
return;
|
||||
}
|
||||
|
||||
bp = st->buf_queue.tqh_first;
|
||||
bp = bufq_first(&st->buf_queue);
|
||||
if (bp == NULL) { /* yes, an assign */
|
||||
return;
|
||||
}
|
||||
TAILQ_REMOVE( &st->buf_queue, bp, b_act);
|
||||
bufq_remove(&st->buf_queue, bp);
|
||||
|
||||
/*
|
||||
* if the device has been unmounted by the user
|
||||
|
@ -43,7 +43,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: worm.c,v 1.44 1997/08/01 12:48:35 jmz Exp $
|
||||
* $Id: worm.c,v 1.45 1997/09/02 20:06:41 bde Exp $
|
||||
*/
|
||||
|
||||
#include "opt_bounce.h"
|
||||
@ -263,7 +263,7 @@ wormattach(struct scsi_link *sc_link)
|
||||
#endif
|
||||
struct scsi_data *worm = sc_link->sd;
|
||||
|
||||
TAILQ_INIT(&worm->buf_queue);
|
||||
bufq_init(&worm->buf_queue);
|
||||
|
||||
#ifdef DEVFS
|
||||
mynor = wormunit(sc_link->dev);
|
||||
@ -337,11 +337,11 @@ wormstart(unit, flags)
|
||||
return;
|
||||
}
|
||||
|
||||
bp = worm->buf_queue.tqh_first;
|
||||
bp = bufq_first(&worm->buf_queue);
|
||||
if (bp == NULL) { /* yes, an assign */
|
||||
return;
|
||||
}
|
||||
TAILQ_REMOVE( &worm->buf_queue, bp, b_act);
|
||||
bufq_remove(&worm->buf_queue, bp);
|
||||
|
||||
if (((bp->b_flags & B_READ) == B_WRITE)
|
||||
&& ((worm->worm_flags & WORMFL_TRACK_PREPED) == 0)) {
|
||||
@ -468,7 +468,7 @@ worm_strategy(struct buf *bp, struct scsi_link *sc_link)
|
||||
* Place it in the queue of activities for this device
|
||||
* at the end.
|
||||
*/
|
||||
TAILQ_INSERT_TAIL(&worm->buf_queue, bp, b_act);
|
||||
bufq_insert_tail(&worm->buf_queue, bp);
|
||||
|
||||
wormstart(unit, 0);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user