From owner-svn-src-all@freebsd.org  Sat Sep 23 12:35:47 2017
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org
 [IPv6:2001:1900:2254:206a::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E88C7E048F6;
 Sat, 23 Sep 2017 12:35:47 +0000 (UTC)
 (envelope-from emaste@FreeBSD.org)
Received: from repo.freebsd.org (repo.freebsd.org
 [IPv6:2610:1c1:1:6068::e6a:0])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id C43E272121;
 Sat, 23 Sep 2017 12:35:47 +0000 (UTC)
 (envelope-from emaste@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v8NCZkof033208;
 Sat, 23 Sep 2017 12:35:46 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id v8NCZkKA033207;
 Sat, 23 Sep 2017 12:35:46 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201709231235.v8NCZkKA033207@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Sat, 23 Sep 2017 12:35:46 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r323951 - head/sys/kern
X-SVN-Group: head
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: head/sys/kern
X-SVN-Commit-Revision: 323951
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 23 Sep 2017 12:35:48 -0000

Author: emaste
Date: Sat Sep 23 12:35:46 2017
New Revision: 323951
URL: https://svnweb.freebsd.org/changeset/base/323951

Log:
  Revert r323935 as it broke the build
  
  subr_witness.c:2577:4: error: use of undeclared identifier 'req'
                          req->oldidx = 0;
                          ^

Modified:
  head/sys/kern/subr_witness.c

Modified: head/sys/kern/subr_witness.c
==============================================================================
--- head/sys/kern/subr_witness.c	Sat Sep 23 12:32:11 2017	(r323950)
+++ head/sys/kern/subr_witness.c	Sat Sep 23 12:35:46 2017	(r323951)
@@ -2539,18 +2539,31 @@ DB_SHOW_COMMAND(witness, db_witness_display)
 }
 #endif
 
-static void
-sbuf_print_witness_badstacks(struct sbuf *sb)
+static int
+sysctl_debug_witness_badstacks(SYSCTL_HANDLER_ARGS)
 {
 	struct witness_lock_order_data *data1, *data2, *tmp_data1, *tmp_data2;
 	struct witness *tmp_w1, *tmp_w2, *w1, *w2;
+	struct sbuf *sb;
 	u_int w_rmatrix1, w_rmatrix2;
-	int generation, i, j;
+	int error, generation, i, j;
 
 	tmp_data1 = NULL;
 	tmp_data2 = NULL;
 	tmp_w1 = NULL;
 	tmp_w2 = NULL;
+	if (witness_watch < 1) {
+		error = SYSCTL_OUT(req, w_notrunning, sizeof(w_notrunning));
+		return (error);
+	}
+	if (witness_cold) {
+		error = SYSCTL_OUT(req, w_stillcold, sizeof(w_stillcold));
+		return (error);
+	}
+	error = 0;
+	sb = sbuf_new(NULL, NULL, badstack_sbuf_size, SBUF_AUTOEXTEND);
+	if (sb == NULL)
+		return (ENOMEM);
 
 	/* Allocate and init temporary storage space. */
 	tmp_w1 = malloc(sizeof(struct witness), M_TEMP, M_WAITOK | M_ZERO);
@@ -2670,55 +2683,13 @@ restart:
 	free(tmp_data2, M_TEMP);
 	free(tmp_w1, M_TEMP);
 	free(tmp_w2, M_TEMP);
-}
 
-static int
-sysctl_debug_witness_badstacks(SYSCTL_HANDLER_ARGS)
-{
-	struct sbuf *sb;
-	int error;
-
-	if (witness_watch < 1) {
-		error = SYSCTL_OUT(req, w_notrunning, sizeof(w_notrunning));
-		return (error);
-	}
-	if (witness_cold) {
-		error = SYSCTL_OUT(req, w_stillcold, sizeof(w_stillcold));
-		return (error);
-	}
-	error = 0;
-	sb = sbuf_new(NULL, NULL, badstack_sbuf_size, SBUF_AUTOEXTEND);
-	if (sb == NULL)
-		return (ENOMEM);
-
-	sbuf_print_witness_badstacks(sb);
-
 	sbuf_finish(sb);
 	error = SYSCTL_OUT(req, sbuf_data(sb), sbuf_len(sb) + 1);
 	sbuf_delete(sb);
 
 	return (error);
 }
-
-#ifdef DDB
-static int
-sbuf_db_printf_drain(void *arg __unused, const char *data, int len)
-{
-
-	return (db_printf("%.*s", len, data));
-}
-
-DB_SHOW_COMMAND(badstacks, db_witness_badstacks)
-{
-	struct sbuf sb;
-	char buffer[128];
-
-	sbuf_new(&sb, buffer, sizeof(buffer), SBUF_FIXEDLEN);
-	sbuf_set_drain(&sb, sbuf_db_printf_drain, NULL);
-	sbuf_print_witness_badstacks(&sb);
-	sbuf_finish(&sb);
-}
-#endif
 
 static int
 sysctl_debug_witness_channel(SYSCTL_HANDLER_ARGS)