summaryrefslogtreecommitdiffstats
path: root/sys/dev/mps/mpsvar.h
diff options
context:
space:
mode:
authorscottl <scottl@FreeBSD.org>2013-07-19 00:12:41 +0000
committerscottl <scottl@FreeBSD.org>2013-07-19 00:12:41 +0000
commit6931e864011808907fcb545c1c64ad91aaf7f8cd (patch)
tree054c1447ec723a8e3ea8b14c7b289026944641fe /sys/dev/mps/mpsvar.h
parent1b0750b86c77afe56bc851b72ab13a0d7536d066 (diff)
downloadFreeBSD-src-6931e864011808907fcb545c1c64ad91aaf7f8cd.zip
FreeBSD-src-6931e864011808907fcb545c1c64ad91aaf7f8cd.tar.gz
Overhaul error, information, and debug logging.
Obtained from: Netflix MFC after: 3 days
Diffstat (limited to 'sys/dev/mps/mpsvar.h')
-rw-r--r--sys/dev/mps/mpsvar.h33
1 files changed, 21 insertions, 12 deletions
diff --git a/sys/dev/mps/mpsvar.h b/sys/dev/mps/mpsvar.h
index 5d14b5f..c30ee2c 100644
--- a/sys/dev/mps/mpsvar.h
+++ b/sys/dev/mps/mpsvar.h
@@ -581,11 +581,17 @@ mps_unlock(struct mps_softc *sc)
mtx_unlock(&sc->mps_mtx);
}
-#define MPS_INFO (1 << 0)
-#define MPS_TRACE (1 << 1)
-#define MPS_FAULT (1 << 2)
-#define MPS_EVENT (1 << 3)
-#define MPS_LOG (1 << 4)
+#define MPS_INFO (1 << 0) /* Basic info */
+#define MPS_FAULT (1 << 1) /* Hardware faults */
+#define MPS_EVENT (1 << 2) /* Event data from the controller */
+#define MPS_LOG (1 << 3) /* Log data from the controller */
+#define MPS_RECOVERY (1 << 4) /* Command error recovery tracing */
+#define MPS_ERROR (1 << 5) /* Parameter errors, programming bugs */
+#define MPS_INIT (1 << 6) /* Things related to system init */
+#define MPS_XINFO (1 << 7) /* More detailed/noisy info */
+#define MPS_USER (1 << 8) /* Trace user-generated commands */
+#define MPS_MAPPING (1 << 9) /* Trace device mappings */
+#define MPS_TRACE (1 << 10) /* Function-by-function trace */
#define mps_printf(sc, args...) \
device_printf((sc)->mps_dev, ##args)
@@ -598,23 +604,23 @@ do { \
#define mps_dprint(sc, level, msg, args...) \
do { \
- if (sc->mps_debug & level) \
- device_printf(sc->mps_dev, msg, ##args); \
+ if ((sc)->mps_debug & (level)) \
+ device_printf((sc)->mps_dev, msg, ##args); \
} while (0)
#define mps_dprint_field(sc, level, msg, args...) \
do { \
- if (sc->mps_debug & level) \
+ if ((sc)->mps_debug & (level)) \
printf("\t" msg, ##args); \
} while (0)
#define MPS_PRINTFIELD_START(sc, tag...) \
- mps_dprint((sc), MPS_INFO, ##tag); \
- mps_dprint_field((sc), MPS_INFO, ":\n")
+ mps_dprint((sc), MPS_XINFO, ##tag); \
+ mps_dprint_field((sc), MPS_XINFO, ":\n")
#define MPS_PRINTFIELD_END(sc, tag) \
- mps_dprint((sc), MPS_INFO, tag "\n")
+ mps_dprint((sc), MPS_XINFO, tag "\n")
#define MPS_PRINTFIELD(sc, facts, attr, fmt) \
- mps_dprint_field((sc), MPS_INFO, #attr ": " #fmt "\n", (facts)->attr)
+ mps_dprint_field((sc), MPS_XINFO, #attr ": " #fmt "\n", (facts)->attr)
#define MPS_EVENTFIELD_START(sc, tag...) \
mps_dprint((sc), MPS_EVENT, ##tag); \
@@ -622,6 +628,9 @@ do { \
#define MPS_EVENTFIELD(sc, facts, attr, fmt) \
mps_dprint_field((sc), MPS_EVENT, #attr ": " #fmt "\n", (facts)->attr)
+#define MPS_FUNCTRACE(sc) \
+ mps_dprint((sc), MPS_TRACE, "%s\n", __func__)
+
#define CAN_SLEEP 1
#define NO_SLEEP 0
OpenPOWER on IntegriCloud