From: David Sterba <dsterba@suse.cz>
To: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Cc: linux-btrfs@vger.kernel.org, David Sterba <dsterba@suse.com>,
Qu Wenruo <wqu@suse.com>, Naohiro Aota <naohiro.aota@wdc.com>
Subject: Re: [PATCH v2 0/2] btrfs-progs: fix stale active zone after mkfs
Date: Mon, 14 Sep 2026 21:55:30 +0200 [thread overview]
Message-ID: <20260914195530.GS54722@suse.cz> (raw)
In-Reply-To: <20260914174012.GR54722@twin.jikos.cz>
On Mon, Sep 14, 2026 at 07:40:12PM +0200, David Sterba wrote:
> On Fri, Sep 04, 2026 at 08:24:42AM +0200, Johannes Thumshirn wrote:
> > On zoned devices, mkfs can leave a stale zone behind that is used as a
> > staging area but never reset. This zone is not backed by a chunk or
> > device extent, so the FS itself does not account it as used. On devices
> > that have a limitied active zone budget this can lead to premature
> > ENOSPC and/or an exhaustion of active zones.
> >
> > Fix it in mkfs for new file-systems and also add a check to fsck to find
> > such zones and repair them with '--repair'.
> >
> > Changes to v1:
> > - fix a bug in fsck where it had a stale return value propagated.
> >
> > Johannes Thumshirn (2):
> > btrfs-progs: zoned: refresh stale cached zone state in
> > btrfs_reset_dev_zone()
> > btrfs-progs: check: detect leaked active zones on zoned devices
>
> The build fails on older distros (Centos 8, Leap 15.3/16.0):
>
> CC check/main.o
> check/main.c: In function 'check_zoned_active_zones':
> check/main.c:9220:12: error: 'struct blk_zone' has no member named 'type'
> if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL)
> ^~
> check/main.c:9220:22: error: 'BLK_ZONE_TYPE_CONVENTIONAL' undeclared (first use in this function)
> if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL)
> ^~~~~~~~~~~~~~~~~~~~~~~~~~
> check/main.c:9220:22: note: each undeclared identifier is reported only once for each function it appears in
> check/main.c:9222:12: error: 'struct blk_zone' has no member named 'cond'
> if (zone->cond == BLK_ZONE_COND_EMPTY)
> ^~
> check/main.c:9222:22: error: 'BLK_ZONE_COND_EMPTY' undeclared (first use in this function)
> if (zone->cond == BLK_ZONE_COND_EMPTY)
> ^~~~~~~~~~~~~~~~~~~
>
> The types were added in f5f2bad67a45 ("block: make the new blkzoned UAPI
> constants discoverable") in 2016 and with the rest of the zoned userspace code
> so it's not something recent.
>
> I haven't looked what's the problem, this should be reproducible locally using
> the "ci/ci-centos8" scripts (needs docker).
It fails with --disable-zoned, regardless if the zoned headers are
present or complete. Centos 8 build fine with --enable-zoned, I don't
know when it started to work. On Leap 15.3 the header is only partial,
lacks zone capacity, so it must be disabled.
As a fix an #ifdef around check_zoned_active_zones() should work.
next prev parent reply other threads:[~2026-09-14 19:55 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-04 6:24 [PATCH v2 0/2] btrfs-progs: fix stale active zone after mkfs Johannes Thumshirn
2026-09-04 6:24 ` [PATCH v2 1/2] btrfs-progs: zoned: refresh stale cached zone state in btrfs_reset_dev_zone() Johannes Thumshirn
2026-09-04 6:24 ` [PATCH v2 2/2] btrfs-progs: check: detect leaked active zones on zoned devices Johannes Thumshirn
2026-09-14 17:27 ` [PATCH v2 0/2] btrfs-progs: fix stale active zone after mkfs David Sterba
2026-09-14 17:40 ` David Sterba
2026-09-14 19:55 ` David Sterba [this message]
2026-09-14 20:26 ` David Sterba
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260914195530.GS54722@suse.cz \
--to=dsterba@suse.cz \
--cc=dsterba@suse.com \
--cc=johannes.thumshirn@wdc.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=naohiro.aota@wdc.com \
--cc=wqu@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.