From owner-freebsd-bugs@FreeBSD.ORG Thu Apr 26 12:00:40 2012 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E83C710657D4 for ; Thu, 26 Apr 2012 12:00:40 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id B8DA58FC08 for ; Thu, 26 Apr 2012 12:00:40 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q3QC0eK3018691 for ; Thu, 26 Apr 2012 12:00:40 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q3QC0eJO018689; Thu, 26 Apr 2012 12:00:40 GMT (envelope-from gnats) Date: Thu, 26 Apr 2012 12:00:40 GMT Message-Id: <201204261200.q3QC0eJO018689@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Jeremy Chadwick 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 Reply-To: Jeremy Chadwick List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Apr 2012 12:00:41 -0000 The following reply was made to PR kern/167321; it has been noted by GNATS. From: Jeremy Chadwick To: FreeBSD-gnats-submit@FreeBSD.org, freebsd-bugs@FreeBSD.org Cc: Subject: Re: kern/167321: Implement sysctl to control kernel accounting log messages (e.g. acct(2)) Date: Thu, 26 Apr 2012 05:00:08 -0700 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"); } } }