[Midnightbsd-cvs] src [10830] trunk/usr.sbin/crashinfo/crashinfo.sh: sync

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Sun Jun 10 16:33:04 EDT 2018


Revision: 10830
          http://svnweb.midnightbsd.org/src/?rev=10830
Author:   laffer1
Date:     2018-06-10 16:33:04 -0400 (Sun, 10 Jun 2018)
Log Message:
-----------
sync

Modified Paths:
--------------
    trunk/usr.sbin/crashinfo/crashinfo.sh

Property Changed:
----------------
    trunk/usr.sbin/crashinfo/crashinfo.sh

Modified: trunk/usr.sbin/crashinfo/crashinfo.sh
===================================================================
--- trunk/usr.sbin/crashinfo/crashinfo.sh	2018-06-10 20:31:51 UTC (rev 10829)
+++ trunk/usr.sbin/crashinfo/crashinfo.sh	2018-06-10 20:33:04 UTC (rev 10830)
@@ -28,6 +28,7 @@
 # SUCH DAMAGE.
 #
 # $MidnightBSD$
+# $FreeBSD: stable/10/usr.sbin/crashinfo/crashinfo.sh 303403 2016-07-27 17:55:40Z jhb $
 
 usage()
 {
@@ -35,6 +36,22 @@
 	exit 1
 }
 
+# Run a single gdb command against a kernel file in batch mode.
+# The kernel file is specified as the first argument and the command
+# is given in the remaining arguments.
+gdb_command()
+{
+	local k
+
+	k=$1 ; shift
+
+	if [ -x /usr/local/bin/gdb ]; then
+		/usr/local/bin/gdb -batch -ex "$@" $k
+	else
+		echo -e "$@" | /usr/bin/gdb -x /dev/stdin -batch $k
+	fi
+}
+
 find_kernel()
 {
 	local ivers k kvers
@@ -55,8 +72,8 @@
 
 	# Look for a matching kernel version.
 	for k in `sysctl -n kern.bootfile` $(ls -t /boot/*/kernel); do
-		kvers=$(echo 'printf "  Version String: %s", version' | \
-		    gdb -x /dev/stdin -batch $k 2>/dev/null)
+		kvers=$(gdb_command $k 'printf "  Version String: %s", version' \
+		     2>/dev/null)
 		if [ "$ivers" = "$kvers" ]; then
 			KERNEL=$k
 			break
@@ -151,11 +168,10 @@
 umask 077
 
 # Simulate uname
-ostype=$(echo -e printf '"%s", ostype' | gdb -x /dev/stdin -batch $KERNEL)
-osrelease=$(echo -e printf '"%s", osrelease' | gdb -x /dev/stdin -batch $KERNEL)
-version=$(echo -e printf '"%s", version' | gdb -x /dev/stdin -batch $KERNEL | \
-    tr '\t\n' '  ')
-machine=$(echo -e printf '"%s", machine' | gdb -x /dev/stdin -batch $KERNEL)
+ostype=$(gdb_command $KERNEL 'printf "%s", ostype')
+osrelease=$(gdb_command $KERNEL 'printf "%s", osrelease')
+version=$(gdb_command $KERNEL 'printf "%s", version' | tr '\t\n' '  ')
+machine=$(gdb_command $KERNEL 'printf "%s", machine')
 
 exec > $FILE 2>&1
 
@@ -174,7 +190,11 @@
 if [ $? -eq 0 ]; then
 	echo "bt" >> $file
 	echo "quit" >> $file
-	kgdb $KERNEL $VMCORE < $file
+	if [ -x /usr/local/bin/kgdb ]; then
+		/usr/local/bin/kgdb $KERNEL $VMCORE < $file
+	else
+		kgdb $KERNEL $VMCORE < $file
+	fi
 	rm -f $file
 	echo
 fi
@@ -181,9 +201,9 @@
 echo
 
 echo "------------------------------------------------------------------------"
-echo "ps -axl"
+echo "ps -axlww"
 echo
-ps -M $VMCORE -N $KERNEL -axl
+ps -M $VMCORE -N $KERNEL -axlww
 echo
 
 echo "------------------------------------------------------------------------"
@@ -268,12 +288,6 @@
 echo
 
 echo "------------------------------------------------------------------------"
-echo "netstat -id"
-echo
-netstat -M $VMCORE -N $KERNEL -id
-echo
-
-echo "------------------------------------------------------------------------"
 echo "netstat -anr"
 echo
 netstat -M $VMCORE -N $KERNEL -anr


Property changes on: trunk/usr.sbin/crashinfo/crashinfo.sh
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property


More information about the Midnightbsd-cvs mailing list