Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Sep 2011 17:36:01 +0000 (UTC)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r225343 - head/sys/dev/xen/console
Message-ID:  <201109021736.p82Ha1QN009305@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rwatson
Date: Fri Sep  2 17:36:01 2011
New Revision: 225343
URL: http://svn.freebsd.org/changeset/base/225343

Log:
  Add support for alternative break-to-debugger support on the Xen console.
  This should help debug boot-time hangs experienced in 9.0-BETA.
  
  MFC after:	3 weeks
  Tested by:	sbruno
  Approved by:	re (kib)

Modified:
  head/sys/dev/xen/console/console.c

Modified: head/sys/dev/xen/console/console.c
==============================================================================
--- head/sys/dev/xen/console/console.c	Fri Sep  2 17:30:50 2011	(r225342)
+++ head/sys/dev/xen/console/console.c	Fri Sep  2 17:36:01 2011	(r225343)
@@ -70,6 +70,10 @@ static int rc, rp;
 static unsigned int cnsl_evt_reg;
 static unsigned int wc, wp; /* write_cons, write_prod */
 
+#ifdef KDB
+static int	xc_altbrk;
+#endif
+
 #define CDEV_MAJOR 12
 #define	XCUNIT(x)	(dev2unit(x))
 #define ISTTYOPEN(tp)	((tp) && ((tp)->t_state & TS_ISOPEN))
@@ -268,8 +272,12 @@ xencons_rx(char *buf, unsigned len)
 #endif
 		) {
 		tty_lock(tp);
-		for (i = 0; i < len; i++)
+		for (i = 0; i < len; i++) {
+#ifdef KDB
+			kdb_alt_break(buf[i], &xc_altbrk);
+#endif
 			ttydisc_rint(tp, buf[i], 0);
+		}
 		ttydisc_rint_done(tp);
 		tty_unlock(tp);
 	} else {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201109021736.p82Ha1QN009305>