Re: git: ce4dcb97ca43 - main - zfs: merge openzfs/zfs@9c56b8ec7

From: Cy Schubert <Cy.Schubert_at_cschubert.com>
Date: Mon, 12 Aug 2024 04:51:01 UTC
On Sun, 11 Aug 2024 12:29:18 -0400
Dennis Clarke <dclarke@blastwave.org> wrote:

> On 8/11/24 09:41, Cy Schubert wrote:
> > In message <54076f5e-cd6d-40d6-b4b7-495cf8e67572@blastwave.org>, Dennis
> > Clarke
> > writes:  
> >> On 8/10/24 22:15, Cy Schubert wrote:  
> >>> In message <FB135AEB-1B52-42F3-93F4-2B1B67FC1395@yahoo.com>, Mark Millard
> >>> write
> >>> s:  
> >>  
> >>>>       =E2=80=A2 [2:12 PM]Flox: getting this error in ZFS since recent =
> >>>> update in HEAD
> >>>>       =E2=80=A2 [2:12 PM]Flox:
> >>>> sysctl_warn_reuse: can't re-use a leaf =
> >>>> (kstat.zfs.zroot.dataset.objset-0x204.zil_itx_metaslab_slog_alloc)!
> >>>> pid 58 (zpool) is attempting to use unsafe AIO requests - not logging =
> >>>> anymore
> >>>>
> >>>>       =E2=80=A2 [2:13 PM]Flox:
> >>>> FreeBSD fbsd15.localdomain 15.0-CURRENT FreeBSD 15.0-CURRENT #0 =
> >>>> main-aea9dba46b: Sat Aug 10 16:48:02 EDT 2024 =
> >>>> mike@fbsd15.localdomain:/usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG =
> >>>> amd64  
> >>>
> >>> Yeah. I'm getting tons of these on all my machines as well.
> >>>
> >>> sysctl_warn_reuse: can't re-use a leaf (kstat.zfs.cwsys.dataset.objset-0x2c  
> >> c  
> >>> d.zil_itx_metaslab_slog_alloc)!
> >>>
> >>>  
> >>
> >>
> >> Yep. Seems to be a real thing just pouring out all over the console here
> >> too :
> >>
> >>
> >> sysctl_warn_reuse: can't re-use a leaf
> >> (kstat.zfs.t1.dataset.objset-0x4b0.zil_itx_metaslab_slog_alloc)!  
> > 
> > This only happens on import: when the system boots and when any pools are
> > imported later on.
> >   
> 
> Sadly .. nope ... that is not the case :

Given what I have reported to be true and you having reported a
different condition that produces the error we likely have two
different code paths that result in the same error.

Having just rebooted my laptop produces the error for the main
zpool on nvme and zpools on USB (conditionally) imported later
producing the same error during each import.

> 
> triton# uptime
>   4:27PM  up 11:33, 2 users, load averages: 2.76, 0.93, 0.37
> triton#
> triton# sysctl_warn_reuse: can't re-use a leaf 
> (kstat.zfs.t1.dataset.objset-0x639a.zil_itx_metaslab_slog_alloc)!
[...]
> 
> So seems to be a thing when the machine is running and doing things like 
> a poudriere bulk build etc etc ..

This could be due to mounts of zfs datasets, occurring during boot and
multiple times by poudriere as it recreates each environment for the
next build. It's zfs mount then.

slippy# zfs umount t/wrkdir/amd64
slippy# zfs mount t/wrkdir/amd64
slippy# 

The above resulted in the following errors logged:

sysctl_warn_reuse: can't re-use a leaf (kstat.zfs.t.dataset.objset-0x851.zil_itx_metaslab_slog_alloc)!
sysctl_warn_reuse: can't re-use a leaf (kstat.zfs.t.dataset.objset-0x851.zil_itx_metaslab_slog_alloc)!
sysctl_warn_reuse: can't re-use a leaf (kstat.zfs.t.dataset.objset-0x851.zil_itx_metaslab_slog_alloc)!

> 
> I have not seen it when the machine is just twiddling its thumbs
>   pondering an existential crisis. Yet.

Correct. And a machine doing nothing won't produce the error until it
performs a zfs mount -- in which case it's doing something. ;)

> 
> >>
> >>
> >> Just a tad uncomfortable to see.  
> > 
> > Uncomfortable but harmless.
> >  
> 
> In that case let's make it go away .. mmmkay ?
> 
> --
> Dennis Clarke
> RISC-V/SPARC/PPC/ARM/CISC
> UNIX and Linux spoken
> 
> 

-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  https://FreeBSD.org
NTP:           <cy@nwtime.org>    Web:  https://nwtime.org

			e^(i*pi)+1=0