svn commit: r213577 - stable/8/gnu/usr.bin/gdb/kgdb

Ed Maste emaste at FreeBSD.org
Fri Oct 8 14:59:15 UTC 2010


Author: emaste
Date: Fri Oct  8 14:59:14 2010
New Revision: 213577
URL: http://svn.freebsd.org/changeset/base/213577

Log:
  MFC r213013:
  
    Move test for zero bufp or size before rseq and wseq calculation.  This
    avoids spinning in an infinite loop for some (possibly corrupt?) core
    files at work.

Modified:
  stable/8/gnu/usr.bin/gdb/kgdb/main.c
Directory Properties:
  stable/8/gnu/usr.bin/gdb/kgdb/   (props changed)

Modified: stable/8/gnu/usr.bin/gdb/kgdb/main.c
==============================================================================
--- stable/8/gnu/usr.bin/gdb/kgdb/main.c	Fri Oct  8 14:56:39 2010	(r213576)
+++ stable/8/gnu/usr.bin/gdb/kgdb/main.c	Fri Oct  8 14:59:14 2010	(r213577)
@@ -222,11 +222,13 @@ kgdb_dmesg(void)
 		return;
 	bufp = kgdb_parse("msgbufp->msg_ptr");
 	size = (int)kgdb_parse("msgbufp->msg_size");
+	if (bufp == 0 || size == 0)
+		return;
 	rseq = (int)kgdb_parse("msgbufp->msg_rseq");
 	wseq = (int)kgdb_parse("msgbufp->msg_wseq");
 	rseq = MSGBUF_SEQ_TO_POS(size, rseq);
 	wseq = MSGBUF_SEQ_TO_POS(size, wseq);
-	if (bufp == 0 || size == 0 || rseq == wseq)
+	if (rseq == wseq)
 		return;
 
 	printf("\nUnread portion of the kernel message buffer:\n");


More information about the svn-src-stable-8 mailing list