Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 May 2018 12:33:45 +0300
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Matt Macy <mmacy@FreeBSD.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r333840 - head/sys/kern
Message-ID:  <20180519093345.GH6887@kib.kiev.ua>
In-Reply-To: <201805190407.w4J470xC021897@repo.freebsd.org>
References:  <201805190407.w4J470xC021897@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, May 19, 2018 at 04:07:00AM +0000, Matt Macy wrote:
> Author: mmacy
> Date: Sat May 19 04:07:00 2018
> New Revision: 333840
> URL: https://svnweb.freebsd.org/changeset/base/333840
> 
> Log:
>   filt_timerdetach: only assign to old if we're going to check it in
>   a KASSERT
You also removed the decrement from non-debug builds.

> 
> Modified:
>   head/sys/kern/kern_event.c
> 
> Modified: head/sys/kern/kern_event.c
> ==============================================================================
> --- head/sys/kern/kern_event.c	Sat May 19 04:05:36 2018	(r333839)
> +++ head/sys/kern/kern_event.c	Sat May 19 04:07:00 2018	(r333840)
> @@ -751,12 +751,14 @@ static void
>  filt_timerdetach(struct knote *kn)
>  {
>  	struct kq_timer_cb_data *kc;
> +#ifdef INVARIANTS
>  	unsigned int old;
> +#endif
>  
>  	kc = kn->kn_ptr.p_v;
>  	callout_drain(&kc->c);
>  	free(kc, M_KQUEUE);
> -	old = atomic_fetchadd_int(&kq_ncallouts, -1);
> +	DBGSET(old, atomic_fetchadd_int(&kq_ncallouts, -1));
>  	KASSERT(old > 0, ("Number of callouts cannot become negative"));
>  	kn->kn_status |= KN_DETACHED;	/* knlist_remove sets it */
>  }



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