summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorken <ken@FreeBSD.org>2011-02-25 17:30:25 +0000
committerken <ken@FreeBSD.org>2011-02-25 17:30:25 +0000
commit41410d4d9bb5cbb4ca673d99864f603842c44804 (patch)
tree630c2717236b69152e9ea976695ffff2b87c409e
parent7d4c7b1304581c3271a1ded2c9595ec5df95f8eb (diff)
downloadFreeBSD-src-41410d4d9bb5cbb4ca673d99864f603842c44804.zip
FreeBSD-src-41410d4d9bb5cbb4ca673d99864f603842c44804.tar.gz
Silence 'out of chain frames' warnings and bump the number of frames.
mps.c: Hide the 'out of chain frames' warning behind MPS_INFO. mps_sas.c: Hide the SIM queue freeze/unfreeze messages behind MPS_INFO. mpsvar.h: Bump the number of chain frames from 1024 to 2048. From testing, it looks like this makes it less likely that we'll run out of chain frames, and it doesn't cost much memory (32K). MFC after: 3 days
-rw-r--r--sys/dev/mps/mps.c2
-rw-r--r--sys/dev/mps/mps_sas.c7
-rw-r--r--sys/dev/mps/mpsvar.h2
3 files changed, 6 insertions, 5 deletions
diff --git a/sys/dev/mps/mps.c b/sys/dev/mps/mps.c
index 593ba7e..ed70c43 100644
--- a/sys/dev/mps/mps.c
+++ b/sys/dev/mps/mps.c
@@ -1705,7 +1705,7 @@ mps_data_cb(void *arg, bus_dma_segment_t *segs, int nsegs, int error)
sflags, nsegs - i);
if (error != 0) {
/* Resource shortage, roll back! */
- mps_printf(sc, "out of chain frames\n");
+ mps_dprint(sc, MPS_INFO, "out of chain frames\n");
cm->cm_flags |= MPS_CM_FLAGS_CHAIN_FAILED;
mps_complete_command(cm);
return;
diff --git a/sys/dev/mps/mps_sas.c b/sys/dev/mps/mps_sas.c
index 1c58bb2..6fbda92 100644
--- a/sys/dev/mps/mps_sas.c
+++ b/sys/dev/mps/mps_sas.c
@@ -1542,8 +1542,8 @@ mpssas_scsiio_complete(struct mps_softc *sc, struct mps_command *cm)
if ((sassc->flags & MPSSAS_QUEUE_FROZEN) == 0) {
xpt_freeze_simq(sassc->sim, 1);
sassc->flags |= MPSSAS_QUEUE_FROZEN;
- mps_printf(sc, "Error sending command, freezing "
- "SIM queue\n");
+ mps_dprint(sc, MPS_INFO, "Error sending command, "
+ "freezing SIM queue\n");
}
}
@@ -1556,7 +1556,8 @@ mpssas_scsiio_complete(struct mps_softc *sc, struct mps_command *cm)
if (sassc->flags & MPSSAS_QUEUE_FROZEN) {
ccb->ccb_h.status |= CAM_RELEASE_SIMQ;
sassc->flags &= ~MPSSAS_QUEUE_FROZEN;
- mps_printf(sc, "Unfreezing SIM queue\n");
+ mps_dprint(sc, MPS_INFO,
+ "Unfreezing SIM queue\n");
}
} else {
ccb->ccb_h.status |= CAM_DEV_QFRZN;
diff --git a/sys/dev/mps/mpsvar.h b/sys/dev/mps/mpsvar.h
index 262f9a2..0de654e 100644
--- a/sys/dev/mps/mpsvar.h
+++ b/sys/dev/mps/mpsvar.h
@@ -34,7 +34,7 @@
#define MPS_REQ_FRAMES 1024
#define MPS_EVT_REPLY_FRAMES 32
#define MPS_REPLY_FRAMES MPS_REQ_FRAMES
-#define MPS_CHAIN_FRAMES 1024
+#define MPS_CHAIN_FRAMES 2048
#define MPS_SENSE_LEN SSD_FULL_SIZE
#define MPS_MSI_COUNT 1
#define MPS_SGE64_SIZE 12
OpenPOWER on IntegriCloud