Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Mar 2006 12:05:03 -0500 (EST)
From:      "Andrew R. Reiter" <arr@watson.org>
To:        Robert Watson <rwatson@freebsd.org>
Cc:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   Re: PERFORCE change 93511 for review
Message-ID:  <20060318120450.C51324@fledge.watson.org>
In-Reply-To: <200603181701.k2IH1r5x004312@repoman.freebsd.org>
References:  <200603181701.k2IH1r5x004312@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

Heh; you just read my mind (was about to email)

On Sat, 18 Mar 2006, Robert Watson wrote:

:http://perforce.freebsd.org/chv.cgi?CH=93511
:
:Change 93511 by rwatson@rwatson_peppercorn on 2006/03/18 17:01:32
:
:	When pulling the global audit queue's contents into a thread-local
:	queue, generate one low water mark transition signal, rather than
:	many, and generate it only if actually crossing the transition
:	point, rather than every time we notice we're below it.
:
:Affected files ...
:
:.. //depot/projects/trustedbsd/audit3/sys/security/audit/audit.c#21 edit
:
:Differences ...
:
:==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit.c#21 (text+ko) ====
:
:@@ -555,7 +555,7 @@
: 	struct ucred *audit_cred;
: 	struct thread *audit_td;
: 	struct vnode *audit_vp;
:-	int error;
:+	int error, lowater_signal;
: 
: 	AUDIT_PRINTF(("audit_worker starting\n"));
: 
:@@ -607,13 +607,16 @@
: 		 * our own clustering, if the lower layers aren't doing it
: 		 * automatically enough.
: 		 */
:+		lowater_signal = 0;
: 		while ((ar = TAILQ_FIRST(&audit_q))) {
: 			TAILQ_REMOVE(&audit_q, ar, k_q);
: 			audit_q_len--;
:-			if (audit_q_len <= audit_qctrl.aq_lowater)
:-				cv_broadcast(&audit_commit_cv);
:+			if (audit_q_len == audit_qctrl.aq_lowater)
:+				lowater_signal++;
: 			TAILQ_INSERT_TAIL(&ar_worklist, ar, k_q);
: 		}
:+		if (lowater_signal)
:+			cv_broadcast(&audit_commit_cv);
: 
: 		mtx_unlock(&audit_mtx);
: 		while ((ar = TAILQ_FIRST(&ar_worklist))) {
:
:

--
arr@watson.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060318120450.C51324>