From owner-freebsd-bugs@FreeBSD.ORG Thu Apr 26 12:01:14 2012 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 504FC1065740 for ; Thu, 26 Apr 2012 12:01:14 +0000 (UTC) (envelope-from jdc@koitsu.dyndns.org) Received: from qmta12.emeryville.ca.mail.comcast.net (qmta12.emeryville.ca.mail.comcast.net [76.96.27.227]) by mx1.freebsd.org (Postfix) with ESMTP id 322AB8FC1A for ; Thu, 26 Apr 2012 12:01:14 +0000 (UTC) Received: from omta22.emeryville.ca.mail.comcast.net ([76.96.30.89]) by qmta12.emeryville.ca.mail.comcast.net with comcast id 2bzA1j0041vN32cACc087B; Thu, 26 Apr 2012 12:00:08 +0000 Received: from koitsu.dyndns.org ([67.180.84.87]) by omta22.emeryville.ca.mail.comcast.net with comcast id 2c081j00G1t3BNj8ic08br; Thu, 26 Apr 2012 12:00:08 +0000 Received: by icarus.home.lan (Postfix, from userid 1000) id 0B830102C1E; Thu, 26 Apr 2012 05:00:08 -0700 (PDT) Date: Thu, 26 Apr 2012 05:00:08 -0700 From: Jeremy Chadwick To: FreeBSD-gnats-submit@FreeBSD.org, freebsd-bugs@FreeBSD.org Message-ID: <20120426120008.GA68001@icarus.home.lan> References: <20120426113723.C5D39102C1E@icarus.home.lan> <201204261140.q3QBe8b3001272@freefall.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201204261140.q3QBe8b3001272@freefall.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Subject: Re: kern/167321: Implement sysctl to control kernel accounting log messages (e.g. acct(2)) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Apr 2012 12:01:14 -0000 Proposed patch is attached, as well as available at the below URL. Please note I HAVE NOT tested this, but it seems simple enough. http://jdc.koitsu.org/freebsd/167321/ Patch written for RELENG_8, may/may not patch cleanly on others. -- | Jeremy Chadwick jdc@koitsu.org | | UNIX Systems Administrator http://jdc.koitsu.org/ | | Mountain View, CA, US | | Making life hard for others since 1977. PGP 4BD6C0CB | --- SNIP --- --- src/sys/kern/kern_acct.c.orig 2009-08-03 01:13:06.000000000 -0700 +++ src/sys/kern/kern_acct.c 2012-04-26 04:53:31.428339406 -0700 @@ -146,6 +146,9 @@ #define ACCT_RUNNING 1 /* Accounting kthread is running. */ #define ACCT_EXITREQ 2 /* Accounting kthread should exit. */ +/* sysctl variable used for controlling non-critical log() calls */ +static int acct_logging = 1; + /* * Values associated with enabling and disabling accounting */ @@ -188,6 +191,9 @@ SYSCTL_INT(_kern, OID_AUTO, acct_suspended, CTLFLAG_RD, &acct_suspended, 0, "Accounting suspended or not"); +SYSCTL_INT(_kern, OID_AUTO, acct_logging, CTLFLAG_RW, &acct_logging, 0 + "Log non-critical accounting messages"); + /* * Accounting system call. Written based on the specification and previous * implementation done by Mark Tinguely. @@ -299,7 +305,8 @@ } acct_configured = 1; sx_xunlock(&acct_sx); - log(LOG_NOTICE, "Accounting enabled\n"); + if (acct_logging) + log(LOG_NOTICE, "Accounting enabled\n"); return (error); } @@ -319,7 +326,8 @@ acct_vp = NULL; acct_cred = NULL; acct_flags = 0; - log(LOG_NOTICE, "Accounting disabled\n"); + if (acct_logging) + log(LOG_NOTICE, "Accounting disabled\n"); return (error); } @@ -593,13 +601,15 @@ if (sb.f_bavail > (int64_t)(acctresume * sb.f_blocks / 100)) { acct_suspended = 0; - log(LOG_NOTICE, "Accounting resumed\n"); + if (acct_logging) + log(LOG_NOTICE, "Accounting resumed\n"); } } else { if (sb.f_bavail <= (int64_t)(acctsuspend * sb.f_blocks / 100)) { acct_suspended = 1; - log(LOG_NOTICE, "Accounting suspended\n"); + if (acct_logging) + log(LOG_NOTICE, "Accounting suspended\n"); } } }