summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/aac/aac_cam.c2
-rw-r--r--sys/dev/advansys/advansys.c2
-rw-r--r--sys/dev/advansys/adwcam.c2
-rw-r--r--sys/dev/aha/aha.c4
-rw-r--r--sys/dev/ahb/ahb.c2
-rw-r--r--sys/dev/aic/aic.c5
-rw-r--r--sys/dev/aic7xxx/aic79xx_osm.c2
-rw-r--r--sys/dev/aic7xxx/aic7xxx_osm.c5
-rw-r--r--sys/dev/amd/amd.c5
-rw-r--r--sys/dev/amr/amr_cam.c1
-rw-r--r--sys/dev/arcmsr/arcmsr.c5
-rw-r--r--sys/dev/asr/asr.c3
-rw-r--r--sys/dev/ata/atapi-cam.c2
-rw-r--r--sys/dev/buslogic/bt.c2
-rw-r--r--sys/dev/ciss/ciss.c4
-rw-r--r--sys/dev/dpt/dpt_scsi.c3
-rw-r--r--sys/dev/esp/ncr53c9x.c2
-rw-r--r--sys/dev/firewire/sbp.c1
-rw-r--r--sys/dev/firewire/sbp_targ.c2
-rw-r--r--sys/dev/hptmv/entry.c3
-rw-r--r--sys/dev/iir/iir.c3
-rw-r--r--sys/dev/isp/isp_freebsd.c7
-rw-r--r--sys/dev/mly/mly.c2
-rw-r--r--sys/dev/mpt/mpt_cam.c12
-rw-r--r--sys/dev/ppbus/vpo.c4
-rw-r--r--sys/dev/rr232x/osm_bsd.c3
-rw-r--r--sys/dev/sym/sym_hipd.c2
-rw-r--r--sys/dev/trm/trm.c1
-rw-r--r--sys/dev/twa/tw_osl_cam.c2
-rw-r--r--sys/dev/usb/umass.c3
-rw-r--r--sys/dev/wds/wd7000.c3
31 files changed, 62 insertions, 37 deletions
diff --git a/sys/dev/aac/aac_cam.c b/sys/dev/aac/aac_cam.c
index 1b5690a..88112b5 100644
--- a/sys/dev/aac/aac_cam.c
+++ b/sys/dev/aac/aac_cam.c
@@ -171,7 +171,7 @@ aac_cam_attach(device_t dev)
return (EIO);
sim = cam_sim_alloc(aac_cam_action, aac_cam_poll, "aacp", camsc,
- device_get_unit(dev), 1, 1, devq);
+ device_get_unit(dev), &Giant, 1, 1, devq);
if (sim == NULL) {
cam_simq_free(devq);
return (EIO);
diff --git a/sys/dev/advansys/advansys.c b/sys/dev/advansys/advansys.c
index 5a37af7..79c1f06 100644
--- a/sys/dev/advansys/advansys.c
+++ b/sys/dev/advansys/advansys.c
@@ -1414,7 +1414,7 @@ adv_attach(adv)
* Construct our SIM entry.
*/
adv->sim = cam_sim_alloc(adv_action, adv_poll, "adv", adv, adv->unit,
- 1, adv->max_openings, devq);
+ &Giant, 1, adv->max_openings, devq);
if (adv->sim == NULL)
return (ENOMEM);
diff --git a/sys/dev/advansys/adwcam.c b/sys/dev/advansys/adwcam.c
index 78b8fdd..2ba42da 100644
--- a/sys/dev/advansys/adwcam.c
+++ b/sys/dev/advansys/adwcam.c
@@ -1234,7 +1234,7 @@ adw_attach(struct adw_softc *adw)
* Construct our SIM entry.
*/
adw->sim = cam_sim_alloc(adw_action, adw_poll, "adw", adw, adw->unit,
- 1, adw->max_acbs, devq);
+ &Giant, 1, adw->max_acbs, devq);
if (adw->sim == NULL) {
error = ENOMEM;
goto fail;
diff --git a/sys/dev/aha/aha.c b/sys/dev/aha/aha.c
index 714c1bb..b52b201 100644
--- a/sys/dev/aha/aha.c
+++ b/sys/dev/aha/aha.c
@@ -605,8 +605,8 @@ aha_attach(struct aha_softc *aha)
/*
* Construct our SIM entry
*/
- aha->sim = cam_sim_alloc(ahaaction, ahapoll, "aha", aha, aha->unit, 2,
- tagged_dev_openings, devq);
+ aha->sim = cam_sim_alloc(ahaaction, ahapoll, "aha", aha, aha->unit,
+ &Giant, 2, tagged_dev_openings, devq);
if (aha->sim == NULL) {
cam_simq_free(devq);
return (ENOMEM);
diff --git a/sys/dev/ahb/ahb.c b/sys/dev/ahb/ahb.c
index 8887c80..3f4a588 100644
--- a/sys/dev/ahb/ahb.c
+++ b/sys/dev/ahb/ahb.c
@@ -553,7 +553,7 @@ ahbxptattach(struct ahb_softc *ahb)
* Construct our SIM entry
*/
ahb->sim = cam_sim_alloc(ahbaction, ahbpoll, "ahb", ahb, ahb->unit,
- 2, ahb->num_ecbs, devq);
+ &Giant, 2, ahb->num_ecbs, devq);
if (ahb->sim == NULL) {
cam_simq_free(devq);
return (ENOMEM);
diff --git a/sys/dev/aic/aic.c b/sys/dev/aic/aic.c
index cd9fabc..b647cd4 100644
--- a/sys/dev/aic/aic.c
+++ b/sys/dev/aic/aic.c
@@ -30,6 +30,9 @@ __FBSDID("$FreeBSD$");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/kernel.h>
+#include <sys/lock.h>
+#include <sys/mutex.h>
+#include <sys/malloc.h>
#include <sys/bus.h>
#include <machine/bus.h>
@@ -1540,7 +1543,7 @@ aic_attach(struct aic_softc *aic)
* Construct our SIM entry
*/
aic->sim = cam_sim_alloc(aic_action, aic_poll, "aic", aic,
- aic->unit, 2, 256, devq);
+ aic->unit, &Giant, 2, 256, devq);
if (aic->sim == NULL) {
cam_simq_free(devq);
return (ENOMEM);
diff --git a/sys/dev/aic7xxx/aic79xx_osm.c b/sys/dev/aic7xxx/aic79xx_osm.c
index e16b421..aef520d 100644
--- a/sys/dev/aic7xxx/aic79xx_osm.c
+++ b/sys/dev/aic7xxx/aic79xx_osm.c
@@ -143,7 +143,7 @@ ahd_attach(struct ahd_softc *ahd)
*/
sim = cam_sim_alloc(ahd_action, ahd_poll, "ahd", ahd,
device_get_unit(ahd->dev_softc),
- 1, /*XXX*/256, devq);
+ &Giant, 1, /*XXX*/256, devq);
if (sim == NULL) {
cam_simq_free(devq);
goto fail;
diff --git a/sys/dev/aic7xxx/aic7xxx_osm.c b/sys/dev/aic7xxx/aic7xxx_osm.c
index f3b106c..b53f96a 100644
--- a/sys/dev/aic7xxx/aic7xxx_osm.c
+++ b/sys/dev/aic7xxx/aic7xxx_osm.c
@@ -196,7 +196,7 @@ ahc_attach(struct ahc_softc *ahc)
*/
sim = cam_sim_alloc(ahc_action, ahc_poll, "ahc", ahc,
device_get_unit(ahc->dev_softc),
- 1, AHC_MAX_QUEUE, devq);
+ &Giant, 1, AHC_MAX_QUEUE, devq);
if (sim == NULL) {
cam_simq_free(devq);
goto fail;
@@ -227,7 +227,8 @@ ahc_attach(struct ahc_softc *ahc)
if (ahc->features & AHC_TWIN) {
sim2 = cam_sim_alloc(ahc_action, ahc_poll, "ahc",
- ahc, device_get_unit(ahc->dev_softc), 1,
+ ahc, device_get_unit(ahc->dev_softc),
+ &Giant, 1,
AHC_MAX_QUEUE, devq);
if (sim2 == NULL) {
diff --git a/sys/dev/amd/amd.c b/sys/dev/amd/amd.c
index 4c8ed41..7e5c4df 100644
--- a/sys/dev/amd/amd.c
+++ b/sys/dev/amd/amd.c
@@ -58,6 +58,7 @@
#include <sys/module.h>
#include <sys/lock.h>
#include <sys/mutex.h>
+#include <sys/malloc.h>
#include <vm/vm.h>
#include <vm/pmap.h>
@@ -2481,8 +2482,8 @@ amd_attach(device_t dev)
}
amd->psim = cam_sim_alloc(amd_action, amd_poll, "amd",
- amd, amd->unit, 1, MAX_TAGS_CMD_QUEUE,
- devq);
+ amd, amd->unit, &Giant,
+ 1, MAX_TAGS_CMD_QUEUE, devq);
if (amd->psim == NULL) {
cam_simq_free(devq);
if (bootverbose)
diff --git a/sys/dev/amr/amr_cam.c b/sys/dev/amr/amr_cam.c
index 3553d43..78cd4ec 100644
--- a/sys/dev/amr/amr_cam.c
+++ b/sys/dev/amr/amr_cam.c
@@ -148,6 +148,7 @@ amr_cam_attach(struct amr_softc *sc)
"amr",
sc,
device_get_unit(sc->amr_dev),
+ &Giant,
1,
AMR_MAX_SCSI_CMDS,
devq)) == NULL) {
diff --git a/sys/dev/arcmsr/arcmsr.c b/sys/dev/arcmsr/arcmsr.c
index e6441b2..f4e79b5 100644
--- a/sys/dev/arcmsr/arcmsr.c
+++ b/sys/dev/arcmsr/arcmsr.c
@@ -2145,8 +2145,9 @@ static u_int32_t arcmsr_attach(device_t dev)
printf("arcmsr%d: cam_simq_alloc failure!\n", unit);
return ENXIO;
}
- acb->psim=cam_sim_alloc(arcmsr_action, arcmsr_poll
- , "arcmsr", acb, unit, 1, ARCMSR_MAX_OUTSTANDING_CMD, devq);
+ acb->psim=cam_sim_alloc(arcmsr_action, arcmsr_poll,
+ "arcmsr", acb, unit, &Giant, 1,
+ ARCMSR_MAX_OUTSTANDING_CMD, devq);
if(acb->psim == NULL) {
arcmsr_free_resource(acb);
bus_release_resource(dev, SYS_RES_IRQ, 0, acb->irqres);
diff --git a/sys/dev/asr/asr.c b/sys/dev/asr/asr.c
index 1de0bfd..260cbbd 100644
--- a/sys/dev/asr/asr.c
+++ b/sys/dev/asr/asr.c
@@ -2651,7 +2651,8 @@ asr_attach(device_t dev)
* Construct our first channel SIM entry
*/
sc->ha_sim[bus] = cam_sim_alloc(asr_action, asr_poll, "asr", sc,
- unit, 1, QueueSize, devq);
+ unit, &Giant,
+ 1, QueueSize, devq);
if (sc->ha_sim[bus] == NULL) {
continue;
}
diff --git a/sys/dev/ata/atapi-cam.c b/sys/dev/ata/atapi-cam.c
index ebabf03..4f2bd34 100644
--- a/sys/dev/ata/atapi-cam.c
+++ b/sys/dev/ata/atapi-cam.c
@@ -210,7 +210,7 @@ atapi_cam_attach(device_t dev)
}
if ((sim = cam_sim_alloc(atapi_action, atapi_poll, "ata",
- (void *)scp, unit, 1, 1, devq)) == NULL) {
+ (void *)scp, unit, &Giant, 1, 1, devq)) == NULL) {
error = ENOMEM;
goto out;
}
diff --git a/sys/dev/buslogic/bt.c b/sys/dev/buslogic/bt.c
index 7eee35b..21579ea 100644
--- a/sys/dev/buslogic/bt.c
+++ b/sys/dev/buslogic/bt.c
@@ -874,7 +874,7 @@ bt_attach(device_t dev)
* Construct our SIM entry
*/
bt->sim = cam_sim_alloc(btaction, btpoll, "bt", bt, bt->unit,
- 2, tagged_dev_openings, devq);
+ &Giant, 2, tagged_dev_openings, devq);
if (bt->sim == NULL) {
cam_simq_free(devq);
return (ENOMEM);
diff --git a/sys/dev/ciss/ciss.c b/sys/dev/ciss/ciss.c
index f23017b..6d71334 100644
--- a/sys/dev/ciss/ciss.c
+++ b/sys/dev/ciss/ciss.c
@@ -2476,8 +2476,8 @@ ciss_cam_init(struct ciss_softc *sc)
if ((sc->ciss_cam_sim[i] = cam_sim_alloc(ciss_cam_action, ciss_cam_poll,
"ciss", sc,
device_get_unit(sc->ciss_dev),
+ &Giant, 1,
sc->ciss_max_requests - 2,
- 1,
sc->ciss_cam_devq)) == NULL) {
ciss_printf(sc, "can't allocate CAM SIM for controller %d\n", i);
return(ENOMEM);
@@ -2499,8 +2499,8 @@ ciss_cam_init(struct ciss_softc *sc)
if ((sc->ciss_cam_sim[i] = cam_sim_alloc(ciss_cam_action, ciss_cam_poll,
"ciss", sc,
device_get_unit(sc->ciss_dev),
+ &Giant, 1,
sc->ciss_max_requests - 2,
- 1,
sc->ciss_cam_devq)) == NULL) {
ciss_printf(sc, "can't allocate CAM SIM for controller %d\n", i);
return (ENOMEM);
diff --git a/sys/dev/dpt/dpt_scsi.c b/sys/dev/dpt/dpt_scsi.c
index 9238292..276f0c9 100644
--- a/sys/dev/dpt/dpt_scsi.c
+++ b/sys/dev/dpt/dpt_scsi.c
@@ -1566,7 +1566,8 @@ dpt_attach(dpt_softc_t *dpt)
* Construct our SIM entry
*/
dpt->sims[i] = cam_sim_alloc(dpt_action, dpt_poll, "dpt",
- dpt, dpt->unit, /*untagged*/2,
+ dpt, dpt->unit, &Giant,
+ /*untagged*/2,
/*tagged*/dpt->max_dccbs, devq);
if (dpt->sims[i] == NULL) {
if (i == 0)
diff --git a/sys/dev/esp/ncr53c9x.c b/sys/dev/esp/ncr53c9x.c
index 50c6295..cba58d5 100644
--- a/sys/dev/esp/ncr53c9x.c
+++ b/sys/dev/esp/ncr53c9x.c
@@ -325,7 +325,7 @@ ncr53c9x_attach(struct ncr53c9x_softc *sc)
}
sim = cam_sim_alloc(ncr53c9x_action, ncr53c9x_poll, "esp", sc,
- device_get_unit(sc->sc_dev), 1,
+ device_get_unit(sc->sc_dev), &Giant, 1,
NCR_TAG_DEPTH, devq);
if (sim == NULL) {
device_printf(sc->sc_dev, "cannot allocate SIM entry\n");
diff --git a/sys/dev/firewire/sbp.c b/sys/dev/firewire/sbp.c
index c796d68..fb88553 100644
--- a/sys/dev/firewire/sbp.c
+++ b/sys/dev/firewire/sbp.c
@@ -1964,6 +1964,7 @@ END_DEBUG
sbp->sim = cam_sim_alloc(sbp_action, sbp_poll, "sbp", sbp,
device_get_unit(dev),
+ &Giant,
/*untagged*/ 1,
/*tagged*/ SBP_QUEUE_LEN - 1,
devq);
diff --git a/sys/dev/firewire/sbp_targ.c b/sys/dev/firewire/sbp_targ.c
index eb23412..f943772 100644
--- a/sys/dev/firewire/sbp_targ.c
+++ b/sys/dev/firewire/sbp_targ.c
@@ -1626,7 +1626,7 @@ sbp_targ_attach(device_t dev)
return (ENXIO);
sc->sim = cam_sim_alloc(sbp_targ_action, sbp_targ_poll,
- "sbp_targ", sc, device_get_unit(dev),
+ "sbp_targ", sc, device_get_unit(dev), &Giant,
/*untagged*/ 1, /*tagged*/ 1, devq);
if (sc->sim == NULL) {
cam_simq_free(devq);
diff --git a/sys/dev/hptmv/entry.c b/sys/dev/hptmv/entry.c
index bab49a8..f58329d 100644
--- a/sys/dev/hptmv/entry.c
+++ b/sys/dev/hptmv/entry.c
@@ -1960,7 +1960,8 @@ hpt_attach(device_t dev)
* Construct our SIM entry
*/
if ((hpt_vsim = cam_sim_alloc(hpt_action, hpt_poll, __str(PROC_DIR_NAME),
- pAdapter, device_get_unit(pAdapter->hpt_dev), /*untagged*/1, /*tagged*/8, devq)) == NULL) {
+ pAdapter, device_get_unit(pAdapter->hpt_dev),
+ &Giant, /*untagged*/1, /*tagged*/8, devq)) == NULL) {
cam_simq_free(devq);
return ENOMEM;
}
diff --git a/sys/dev/iir/iir.c b/sys/dev/iir/iir.c
index 51a636c..b58306b 100644
--- a/sys/dev/iir/iir.c
+++ b/sys/dev/iir/iir.c
@@ -502,7 +502,8 @@ iir_attach(struct gdt_softc *gdt)
* Construct our SIM entry
*/
gdt->sims[i] = cam_sim_alloc(iir_action, iir_poll, "iir",
- gdt, gdt->sc_hanum, /*untagged*/1,
+ gdt, gdt->sc_hanum, &Giant,
+ /*untagged*/1,
/*tagged*/GDT_MAXCMDS, devq);
if (xpt_bus_register(gdt->sims[i], i) != CAM_SUCCESS) {
cam_sim_free(gdt->sims[i], /*free_devq*/i == 0);
diff --git a/sys/dev/isp/isp_freebsd.c b/sys/dev/isp/isp_freebsd.c
index f422659..6c4fd06 100644
--- a/sys/dev/isp/isp_freebsd.c
+++ b/sys/dev/isp/isp_freebsd.c
@@ -137,7 +137,7 @@ isp_attach(ispsoftc_t *isp)
*/
ISPLOCK_2_CAMLOCK(isp);
sim = cam_sim_alloc(isp_action, isp_poll, "isp", isp,
- device_get_unit(isp->isp_dev), 1, isp->isp_maxcmds, devq);
+ device_get_unit(isp->isp_dev), &Giant, 1, isp->isp_maxcmds, devq);
if (sim == NULL) {
cam_simq_free(devq);
CAMLOCK_2_ISPLOCK(isp);
@@ -224,7 +224,8 @@ isp_attach(ispsoftc_t *isp)
if (IS_DUALBUS(isp)) {
ISPLOCK_2_CAMLOCK(isp);
sim = cam_sim_alloc(isp_action, isp_poll, "isp", isp,
- device_get_unit(isp->isp_dev), 1, isp->isp_maxcmds, devq);
+ device_get_unit(isp->isp_dev), &Giant, 1,
+ isp->isp_maxcmds, devq);
if (sim == NULL) {
xpt_bus_deregister(cam_sim_path(isp->isp_sim));
xpt_free_path(isp->isp_path);
@@ -2147,7 +2148,7 @@ isp_make_here(ispsoftc_t *isp, int tgt)
* Allocate a CCB, create a wildcard path for this bus,
* and schedule a rescan.
*/
- ccb = xpt_alloc_ccb_nowait();
+ ccb = xpt_alloc_ccb_nowait(isp->isp_osinfo.sim);
if (ccb == NULL) {
isp_prt(isp, ISP_LOGWARN, "unable to alloc CCB for rescan");
CAMLOCK_2_ISPLOCK(mpt);
diff --git a/sys/dev/mly/mly.c b/sys/dev/mly/mly.c
index 62052b0..f9ca34b 100644
--- a/sys/dev/mly/mly.c
+++ b/sys/dev/mly/mly.c
@@ -1945,6 +1945,7 @@ mly_cam_attach(struct mly_softc *sc)
if ((sc->mly_cam_sim[chn] = cam_sim_alloc(mly_cam_action, mly_cam_poll, "mly", sc,
device_get_unit(sc->mly_dev),
+ &Giant,
sc->mly_controllerinfo->maximum_parallel_commands,
1, devq)) == NULL) {
return(ENOMEM);
@@ -1964,6 +1965,7 @@ mly_cam_attach(struct mly_softc *sc)
for (i = 0; i < sc->mly_controllerinfo->virtual_channels_present; i++, chn++) {
if ((sc->mly_cam_sim[chn] = cam_sim_alloc(mly_cam_action, mly_cam_poll, "mly", sc,
device_get_unit(sc->mly_dev),
+ &Giant,
sc->mly_controllerinfo->maximum_parallel_commands,
0, devq)) == NULL) {
return(ENOMEM);
diff --git a/sys/dev/mpt/mpt_cam.c b/sys/dev/mpt/mpt_cam.c
index ac5dffa..5d7c5a5 100644
--- a/sys/dev/mpt/mpt_cam.c
+++ b/sys/dev/mpt/mpt_cam.c
@@ -311,7 +311,7 @@ mpt_cam_attach(struct mpt_softc *mpt)
* Construct our SIM entry.
*/
mpt->sim = cam_sim_alloc(mpt_action, mpt_poll, "mpt", mpt,
- mpt->unit, 1, maxq, devq);
+ mpt->unit, &Giant, 1, maxq, devq);
if (mpt->sim == NULL) {
mpt_prt(mpt, "Unable to allocate CAM SIM!\n");
cam_simq_free(devq);
@@ -348,7 +348,7 @@ mpt_cam_attach(struct mpt_softc *mpt)
* Create a "bus" to export all hidden disks to CAM.
*/
mpt->phydisk_sim = cam_sim_alloc(mpt_action, mpt_poll, "mpt", mpt,
- mpt->unit, 1, maxq, devq);
+ mpt->unit, &Giant, 1, maxq, devq);
if (mpt->phydisk_sim == NULL) {
mpt_prt(mpt, "Unable to allocate Physical Disk CAM SIM!\n");
error = ENOMEM;
@@ -2087,6 +2087,7 @@ mpt_cam_event(struct mpt_softc *mpt, request_t *req,
{
union ccb *ccb;
uint32_t pathid;
+ struct cam_sim *sim;
/*
* In general this means a device has been added to the loop.
*/
@@ -2095,16 +2096,17 @@ mpt_cam_event(struct mpt_softc *mpt, request_t *req,
break;
}
if (mpt->phydisk_sim) {
- pathid = cam_sim_path(mpt->phydisk_sim);;
+ sim = mpt->phydisk_sim;
} else {
- pathid = cam_sim_path(mpt->sim);
+ sim = mpt->sim;
}
+ pathid = cam_sim_path(sim);
MPTLOCK_2_CAMLOCK(mpt);
/*
* Allocate a CCB, create a wildcard path for this bus,
* and schedule a rescan.
*/
- ccb = xpt_alloc_ccb_nowait();
+ ccb = xpt_alloc_ccb_nowait(sim);
if (ccb == NULL) {
mpt_prt(mpt, "unable to alloc CCB for rescan\n");
CAMLOCK_2_MPTLOCK(mpt);
diff --git a/sys/dev/ppbus/vpo.c b/sys/dev/ppbus/vpo.c
index abb2ef8..c9510b2 100644
--- a/sys/dev/ppbus/vpo.c
+++ b/sys/dev/ppbus/vpo.c
@@ -32,6 +32,8 @@ __FBSDID("$FreeBSD$");
#include <sys/systm.h>
#include <sys/module.h>
#include <sys/bus.h>
+#include <sys/lock.h>
+#include <sys/mutex.h>
#include <sys/malloc.h>
#include <cam/cam.h>
@@ -160,7 +162,7 @@ vpo_attach(device_t dev)
return (ENXIO);
vpo->sim = cam_sim_alloc(vpo_action, vpo_poll, "vpo", vpo,
- device_get_unit(dev),
+ device_get_unit(dev), &Giant,
/*untagged*/1, /*tagged*/0, devq);
if (vpo->sim == NULL) {
cam_simq_free(devq);
diff --git a/sys/dev/rr232x/osm_bsd.c b/sys/dev/rr232x/osm_bsd.c
index 1e77fbf..ae394f4 100644
--- a/sys/dev/rr232x/osm_bsd.c
+++ b/sys/dev/rr232x/osm_bsd.c
@@ -1088,7 +1088,8 @@ static void hpt_final_init(void *dummy)
}
vbus_ext->sim = cam_sim_alloc(hpt_action, hpt_poll, driver_name,
- vbus_ext, 0, os_max_queue_comm, /*tagged*/8, devq);
+ vbus_ext, 0, &Giant,
+ os_max_queue_comm, /*tagged*/8, devq);
if (!vbus_ext->sim) {
os_printk("cam_sim_alloc failed");
diff --git a/sys/dev/sym/sym_hipd.c b/sys/dev/sym/sym_hipd.c
index e4357b1..679b98b 100644
--- a/sys/dev/sym/sym_hipd.c
+++ b/sys/dev/sym/sym_hipd.c
@@ -8973,7 +8973,7 @@ static int sym_cam_attach(hcb_p np)
* Construct our SIM entry.
*/
sim = cam_sim_alloc(sym_action, sym_poll, "sym", np, np->unit,
- 1, SYM_SETUP_MAX_TAG, devq);
+ &Giant, 1, SYM_SETUP_MAX_TAG, devq);
if (!sim)
goto fail;
devq = 0;
diff --git a/sys/dev/trm/trm.c b/sys/dev/trm/trm.c
index 31cad43..b3690ac 100644
--- a/sys/dev/trm/trm.c
+++ b/sys/dev/trm/trm.c
@@ -3636,6 +3636,7 @@ trm_attach(device_t dev)
"trm",
pACB,
unit,
+ &Giant,
1,
TRM_MAX_TAGS_CMD_QUEUE,
device_Q);
diff --git a/sys/dev/twa/tw_osl_cam.c b/sys/dev/twa/tw_osl_cam.c
index 6b6afeb..e5a1143 100644
--- a/sys/dev/twa/tw_osl_cam.c
+++ b/sys/dev/twa/tw_osl_cam.c
@@ -102,7 +102,7 @@ tw_osli_cam_attach(struct twa_softc *sc)
*/
tw_osli_dbg_dprintf(3, sc, "Calling cam_sim_alloc");
sc->sim = cam_sim_alloc(twa_action, twa_poll, "twa", sc,
- device_get_unit(sc->bus_dev),
+ device_get_unit(sc->bus_dev), &Giant,
TW_OSLI_MAX_NUM_IOS - 1, 1, devq);
if (sc->sim == NULL) {
cam_simq_free(devq);
diff --git a/sys/dev/usb/umass.c b/sys/dev/usb/umass.c
index de15d47..5c071b3 100644
--- a/sys/dev/usb/umass.c
+++ b/sys/dev/usb/umass.c
@@ -110,6 +110,8 @@
#include <sys/systm.h>
#include <sys/kernel.h>
#include <sys/module.h>
+#include <sys/lock.h>
+#include <sys/mutex.h>
#include <sys/bus.h>
#include <sys/sysctl.h>
@@ -2257,6 +2259,7 @@ umass_cam_attach_sim(struct umass_softc *sc)
DEVNAME_SIM,
sc /*priv*/,
device_get_unit(sc->sc_dev) /*unit number*/,
+ &Giant,
1 /*maximum device openings*/,
0 /*maximum tagged device openings*/,
devq);
diff --git a/sys/dev/wds/wd7000.c b/sys/dev/wds/wd7000.c
index 8c91f75..05695c7 100644
--- a/sys/dev/wds/wd7000.c
+++ b/sys/dev/wds/wd7000.c
@@ -132,6 +132,7 @@ __FBSDID("$FreeBSD$");
#include <sys/errno.h>
#include <sys/kernel.h>
#include <sys/assym.h>
+#include <sys/malloc.h>
#include <sys/bio.h>
#include <sys/buf.h>
@@ -606,7 +607,7 @@ wds_attach(device_t dev)
goto bad;
sim = cam_sim_alloc(wds_action, wds_poll, "wds", (void *) wp,
- wp->unit, 1, 1, devq);
+ wp->unit, &Giant, 1, 1, devq);
if (sim == NULL) {
cam_simq_free(devq);
goto bad;
OpenPOWER on IntegriCloud