From: Paul Graff <pj.world@gmx.com>
To: Qu Wenruo <quwenruo.btrfs@gmx.com>, linux-btrfs@vger.kernel.org
Subject: Re: Stuck subvolume removal:
Date: Fri, 14 Nov 2025 13:38:20 -0600 [thread overview]
Message-ID: <01f8b560-fb57-4861-8382-141c39655478@gmx.com> (raw)
In-Reply-To: <4b4fc981-912d-40cd-945b-d4acf14198e1@gmx.com>
On 11/13/25 4:54 PM, Qu Wenruo wrote:
>
>
> 在 2025/11/14 09:10, Paul Graff 写道:
>> Hi, currently there is a dropped subvolume error when running a full
>> balance on a single SSD.
>>
>> |:~> sudo btrfs balance start / WARNING: Full balance without filters
>> requested. This operation is very intense and takes potentially very
>> long. It is recommended to use the balance filters to narrow down the
>> scope of balance. Use 'btrfs balance start --full-balance' option to
>> skip this warning. The operation will start in 10 seconds. Use Ctrl-C
>> to stop it. 10 9 8 7 6 5 4 3 2 1 Starting balance without any
>> filters. ERROR: error during balancing '/': Structure needs cleaning
>> There may be more info in syslog - try dmesg | tail
>> hightower-i5-6600k:~> dmesg | tail [38576.407681] [ T29728] BTRFS
>> info (device dm-2): found 37170 extents, stage: update data pointers
>> [38584.873805] [ T29728] BTRFS info (device dm-2): relocating block
>> group 64891125760 flags data [38607.693519] [ T29728] BTRFS info
>> (device dm-2): found 33194 extents, stage: move data extents
>> [38641.574032] [ T29728] BTRFS info (device dm-2): found 33194
>> extents, stage: update data pointers [38649.812477] [ T29728] BTRFS
>> info (device dm-2): relocating block group 62710087680 flags data
>> [38662.710999] [ T29728] BTRFS info (device dm-2): found 43884
>> extents, stage: move data extents [38696.292982] [ T29728] BTRFS info
>> (device dm-2): found 43884 extents, stage: update data pointers
>> [38708.587669] [ T29728] BTRFS info (device dm-2): relocating block
>> group 60294168576 flags metadata|dup [38714.889735] [ T29728] BTRFS
>> error (device dm-2): cannot relocate partially dropped subvolume 490,
>> drop progress key (853588 108 0) [38723.736887] [ T29728] BTRFS info
>> (device dm-2): balance: ended with status: -117 hightower-i5-6600k:~>|
>
> The format is a mess.
My apologies for the disastrous output format above.
> Please provide a proper formatted dmesg instead.
:~> sudo dmesg | tail
[sudo] password for root:
[44928.672213] [ T96240] BTRFS info (device dm-2): found 55680 extents,
stage: update data pointers
[44937.810972] [ T96240] BTRFS info (device dm-2): found 4 extents,
stage: update data pointers
[44938.590658] [ T96240] BTRFS info (device dm-2): relocating block
group 60294168576 flags metadata|dup
[44945.516661] [ T96240] BTRFS error (device dm-2): cannot relocate
partially dropped subvolume 490, drop progress key (853588 108 0)
[44955.995468] [ T96240] BTRFS info (device dm-2): balance: ended with
status: -117
:~>
>
> Along with the kernel version.
Most current openSUSE Rescue system CD used for btrfs check, uname -a >
6.17.7-1
>
> The relocation is rejected because there is a half-dropped subvolume,
> which is not that common.
> It maybe a problem with the fs that there are some ghost subvolumes
> that are never dropped.
>
> There used to be kernel bug that can lead to such ghost subvolumes,
> IIRC the latest btrfs check can detect it.
>
> So please also provide the output of "btrfs check --readonly" of the
> unmounted fs.
:~ # btrfs check --readonly --progress /dev/mapper/system-root
Opening filesystem to check...
Checking filesystem on /dev/mapper/system-root
UUID: 605560ad-fe93-4d09-8760-df0725b43ee1
[1/8] checking log skipped (none written)
[1/7] checking root items (0:00:14 elapsed, 5328460 items checked)
[2/7] checking extents (0:01:01 elapsed, 984830 items checked)
[3/7] checking free space cache (0:00:12 elapsed, 471 items checked)
[4/7] checking fs roots (0:04:32 elapsed, 910644 items checked)
[5/7] checking csums (without verifying data) (0:00:12 elapsed, 895024
items checked)
fs tree 490 missing orphan item (0:00:00 elapsed, 94 items checked)
[6/7] checking root refs (0:00:01 elapsed, 94 items checked)
ERROR: errors found in root refs
found 496776130741 bytes used, error(s) found
total csum bytes: 465839608
total tree bytes: 16133832704
total fs tree bytes: 14983905280
total extent tree bytes: 624771072
btree space waste bytes: 3613129770
file data blocks allocated: 1062495817728
referenced 976540409856
:~ #
>
> Thanks,
> Qu
>
-Greatest Hopes
Paul
>>
>> After passing,
>>
>> |:~> sudo btrfs subvolume sync / [sudo] password for root: hightower-
>> i5-6600k:~> |
>>
>> the command returned to prompt very, very quickly.
>>
>> A second balance attempt results with the following output:
>>
>> |:~> sudo btrfs balance start / WARNING: Full balance without filters
>> requested. This operation is very intense and takes potentially very
>> long. It is recommended to use the balance filters to narrow down the
>> scope of balance. Use 'btrfs balance start --full-balance' option to
>> skip this warning. The operation will start in 10 seconds. Use Ctrl-C
>> to stop it. 10 9 8 7 6 5 4 3 2 1 Starting balance without any
>> filters. ERROR: error during balancing '/': Structure needs cleaning
>> There may be more info in syslog - try dmesg | tail
>> hightower-i5-6600k:~> |
>>
>> |:~> dmesg | tail [93689.781162] [ T69656] BTRFS info (device dm-2):
>> found 16 extents, stage: update data pointers [93690.667290] [
>> T69656] BTRFS info (device dm-2): relocating block group
>> 1495819878400 flags data [93703.323923] [ T69656] BTRFS info (device
>> dm-2): found 33 extents, stage: move data extents [93705.575991] [
>> T69656] BTRFS info (device dm-2): found 33 extents, stage: update
>> data pointers [93706.769453] [ T69656] BTRFS info (device dm-2):
>> relocating block group 1494746136576 flags data [93725.570642] [
>> T69656] BTRFS info (device dm-2): found 39 extents, stage: move data
>> extents [93727.449779] [ T69656] BTRFS info (device dm-2): found 39
>> extents, stage: update data pointers [93728.465650] [ T69656] BTRFS
>> info (device dm-2): relocating block group 60294168576 flags
>> metadata|dup [93736.722689] [ T69656] BTRFS error (device dm-2):
>> cannot relocate partially dropped subvolume 490, drop progress key
>> (853588 108 0) [93750.594559] [ T69656] BTRFS info (device dm-2):
>> balance: ended with status: -117 hightower- i5-6600k:~> |
>>
>> Please see the following referenced, prior posting for stuck
>> subvolume removal similarity.
>> https://lore.kernel.org/linux-btrfs/9f936d59-
>> d782-1f48-bbb7-dd1c8dae2615@gmail.com/
>>
>> Is there a patch for btrfsprogs? If so can the patch be merged?|
>> |
>>
>> What are your thoughts on this?
>>
>>
>>
>>
>>
>
next prev parent reply other threads:[~2025-11-14 19:38 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-13 22:40 Stuck subvolume removal: Paul Graff
2025-11-13 22:54 ` Qu Wenruo
2025-11-14 19:38 ` Paul Graff [this message]
2025-11-14 19:55 ` Qu Wenruo
2026-01-28 8:42 ` Paul Graff
2026-01-28 8:49 ` Qu Wenruo
2026-03-01 15:47 ` Paul Graff
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=01f8b560-fb57-4861-8382-141c39655478@gmx.com \
--to=pj.world@gmx.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=quwenruo.btrfs@gmx.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox