svn commit: r242194 - projects/bhyve/sys/dev/bvm
Neel Natu
neel at FreeBSD.org
Sat Oct 27 22:54:24 UTC 2012
Author: neel
Date: Sat Oct 27 22:54:23 2012
New Revision: 242194
URL: http://svn.freebsd.org/changeset/base/242194
Log:
Probe for existence of the bvm debug port instead of just assuming that it is
always present.
Suggested by: grehan
Obtained from: NetApp
Modified:
projects/bhyve/sys/dev/bvm/bvm_dbg.c
Modified: projects/bhyve/sys/dev/bvm/bvm_dbg.c
==============================================================================
--- projects/bhyve/sys/dev/bvm/bvm_dbg.c Sat Oct 27 22:43:30 2012 (r242193)
+++ projects/bhyve/sys/dev/bvm/bvm_dbg.c Sat Oct 27 22:54:23 2012 (r242194)
@@ -49,6 +49,8 @@ GDB_DBGPORT(bvm, bvm_dbg_probe, bvm_dbg_
#define BVM_DBG_PORT 0x224
static int bvm_dbg_port = BVM_DBG_PORT;
+#define BVM_DBG_SIG ('B' << 8 | 'V')
+
static int
bvm_dbg_probe(void)
{
@@ -56,17 +58,21 @@ bvm_dbg_probe(void)
disabled = 0;
resource_int_value("bvmdbg", 0, "disabled", &disabled);
- if (disabled)
- return (-1);
- if (resource_int_value("bvmdbg", 0, "port", &port) == 0)
- bvm_dbg_port = port;
+ if (!disabled) {
+ if (resource_int_value("bvmdbg", 0, "port", &port) == 0)
+ bvm_dbg_port = port;
+
+ if (inw(bvm_dbg_port) == BVM_DBG_SIG) {
+ /*
+ * Return a higher priority than 0 to override other
+ * gdb dbgport providers that may be present (e.g. uart)
+ */
+ return (1);
+ }
+ }
- /*
- * Return a higher priority than 0 to override other
- * gdb dbgport providers that may be present (e.g. uart)
- */
- return (1);
+ return (-1);
}
static void
More information about the svn-src-projects
mailing list