Date: Mon, 13 Apr 2026 19:12:32 +0200 From: Jan Martin Mikkelsen <janm@transactionware.com> To: current@freebsd.org Cc: Konstantin Belousov <kib@freebsd.org> Subject: Re: Panic: cache_vop_rename: lingering negative entry Message-ID: <EC385E00-435E-4EF0-BE8E-7D1337E64E80@transactionware.com> In-Reply-To: <44E3FE9A-4244-49EB-97E0-16080B68F12B@transactionware.com> References: <2016260A-5C07-45EE-87CA-73918BA16E83@transactionware.com> <adU2ibwH_2aeq8m9@kib.kiev.ua> <44E3FE9A-4244-49EB-97E0-16080B68F12B@transactionware.com>
index | next in thread | previous in thread | raw e-mail
> On 7 Apr 2026, at 20:20, Jan Martin Mikkelsen <janm@transactionware.com> wrote: > > On 7 Apr 2026, at 18:53, Konstantin Belousov <kib@freebsd.org> wrote: >> >> On Tue, Apr 07, 2026 at 05:02:05PM +0200, Jan Martin Mikkelsen wrote: >>> Hi, >>> >>> I am consistently getting the panic below while building lang/perl5.42. This is the command from the perl build that triggers the panic: >>> >>> /usr/bin/strip /ports-work/usr/ports/lang/perl5.42/work/stage/usr/local/bin/perl5.42.0 >>> >>> CURRENT on aarch64, with a kernel from last week, also with a later one from the weekend. A kernel from mid-January worked fine. >>> >>> I can reproduce on demand, no parallelism in the build required. >>> >>> Does this look familiar to anyone? >>> >>> panic: cache_vop_rename: lingering negative entry >>> cpuid = 4 >>> time = 1775410763 >>> KDB: stack backtrace: >>> db_trace_self() at db_trace_self >>> db_trace_self_wrapper() at db_trace_self_wrapper+0x38 >>> vpanic() at vpanic+0x1a0 >>> panic() at panic+0x48 >>> cache_vop_rename() at cache_vop_rename+0xb0 >>> zfs_do_rename() at zfs_do_rename+0xafc >>> zfs_freebsd_rename() at zfs_freebsd_rename+0x5c >>> VOP_RENAME_APV() at VOP_RENAME_APV+0x44 >>> kern_renameat () at kern_renameat+0x574 >>> do_el0_sync() at do_el0_sync+0x5f8 >>> handle_el0_sync() at handle_el0_sync+0x4c >>> --- exception, esr 0x56000000 >>> KDB: enter: panic >>> [ thread pid 81230 tid 101738 ] >>> Stopped at kdb_enter+0x48: str xzr, [x19, #3072] >> >> Is it reproducable on UFS and/or tmpfs? > > Successful completion (no panic) when the work directory is on UFS, and when the work directory is on tmpfs. I didn’t try multiple times, but it never works on ZFS. The panic consistently reproduces on a ZFS filesystem with the properties “utf8only=on” and "normalization=formD”. A ZFS file system with “utf8only=off” and "normalization=none” works fine. As far as I can see, strip makes a simple rename(2) call, and testing rename(2) works fine (as expected). Running the same strip command on the same files on a fresh system works fine. The smallest reproducer I have at the moment is building lang/perl5.42.0 with a workdir on a ZFS filesystem enforcing UTF8. Jan M.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EC385E00-435E-4EF0-BE8E-7D1337E64E80>
