[Bug 282478] [ipfilter] Silence a lock upon service stop

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 02 Nov 2024 15:51:46 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282478

Mark Johnston <markj@FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|New                         |Open
                 CC|                            |markj@FreeBSD.org

--- Comment #1 from Mark Johnston <markj@FreeBSD.org> ---
To fix this, I think it'd be sufficient to:
1. Use callout_init_rw() to initialize ipf_slow_ch, and remove the locking in
ipf_timer_func().
2. Use callout_stop() instead of callout_drain().

This assumes that the global ipf lock is not dropped while executing
ipf_timer_func(), which I believe is the case.  If so, then callout_stop() can
cancel a pending callout without sleeping, avoiding the problem which triggers
that warning.

-- 
You are receiving this mail because:
You are the assignee for the bug.