Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Jul 2026 08:46:57 -0400
From:      Mark Johnston <markj@freebsd.org>
To:        Kevin Bowling <kevin.bowling@kev009.com>
Cc:        src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject:   Re: git: 1f4b0ea4f3eb - main - kqueue: Add a helper macro for sleeping on in-flux knotes
Message-ID:  <amn2QQiHm2RXpgae@nuc>
In-Reply-To: <CAK7dMtDU8F=VAusGYYkEfAvxtRO%2BVB5MohjX=-sC1qbP_YE=mQ@mail.gmail.com>
References:  <6a67e66f.32351.45a31bd3@gitrepo.freebsd.org> <CAK7dMtDU8F=VAusGYYkEfAvxtRO%2BVB5MohjX=-sC1qbP_YE=mQ@mail.gmail.com>

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

On Wed, Jul 29, 2026 at 04:05:43AM -0700, Kevin Bowling wrote:
> Hi Mark,
> 
> This is resulting in relatively easy to trigger panic with 'syncthing'
> running under INVARIANTS:
> panic: kqueue_scan: knote 0xfffffe018aeab930 not on kqueue 0xfffff80010aa2400
> 
> The panic occurs at the new KASSERT in KQ_FLUX_SLEEP_WMESG(), called
> from kqueue_scan() line 2197. Two Syncthing threads were concurrently
> scanning the same kqueue.
> 
> kgdb showed that the knote named in the panic was exactly the other
> scanning thread’s local marker:
> 
> &marker = 0xfffffe018aeab930
> marker.kn_status = KN_MARKER
> marker.kn_kq = NULL
> kq = 0xfffff80010aa2400

I just committed a change which should address this:
https://cgit.freebsd.org/src/commit/?id=9a9349ea1da2d80e979fa87b430551d8f6dac7f4


home | help

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