From: Kent Overstreet <kent.overstreet@linux.dev>
To: linux-bcachefs@vger.kernel.org, linux-fsdevel@vger.kernel.org
Subject: [WIP] bcachefs fs usage update
Date: Fri, 1 Mar 2024 21:14:45 -0500 [thread overview]
Message-ID: <gajhq3iyluwmr44ee2fzacfpgpxmr2jurwqg6aeiab4lfila3p@b3l7bywr3yed> (raw)
I'm currently updating the 'bcachefs fs usage' command for the disk
accounting rewrite, and looking for suggestions on any improements we
could make - ways to present the output that would be clearer and more
useful, possibly ideas on on new things to count...
I think a shorter form of the per-device section is in order, a table
with data type on the x axis and the device on the y axis; we also want
percentages.
The big thing I'm trying to figure out is how to present the snapshots
counters in a useful way.
Snapshot IDs form trees, where subvolumes correspond to leaf nodes in
snapshot trees and interior nodes represent data shared between multiple
subvolumes.
That means it's straightforward to print how much data each subvolumme
is using directly - look up the subvolume for a given snapshot ID, look
up the filesystem path of that subvolume - but I haven't come up with a
good way of presenting how data is shared; these trees can be
arbitrarily large.
Thoughts?
Filesystem: 77d3a40d-58b6-46c9-a4d2-e59c8681e152
Size: 11.0 GiB
Used: 4.96 GiB
Online reserved: 0 B
Inodes: 4
Persistent reservations:
2x 5.00 MiB
Data type Required/total Durability Devices
btree: 1/2 2 [vdb vdc] 14.0 MiB
btree: 1/2 2 [vdb vdd] 17.8 MiB
btree: 1/2 2 [vdc vdd] 14.3 MiB
user: 1/2 2 [vdb vdc] 1.64 GiB
user: 1/2 2 [vdb vdd] 1.63 GiB
user: 1/2 2 [vdc vdd] 1.64 GiB
Compression: compressed uncompressed average extent size
lz4 4.63 GiB 6.57 GiB 112 KiB
incompressible 328 MiB 328 MiB 113 KiB
Snapshots:
4294967295 4.91 GiB
Btrees:
extents 12.0 MiB
inodes 256 KiB
dirents 256 KiB
alloc 10.8 MiB
subvolumes 256 KiB
snapshots 256 KiB
lru 256 KiB
freespace 256 KiB
need_discard 256 KiB
backpointers 20.5 MiB
bucket_gens 256 KiB
snapshot_trees 256 KiB
logged_ops 256 KiB
accounting 256 KiB
(no label) (device 0): vdb rw
data buckets fragmented
free: 2.27 GiB 18627
sb: 3.00 MiB 25 124 KiB
journal: 32.0 MiB 256
btree: 15.9 MiB 127
user: 1.64 GiB 13733 41.1 MiB
cached: 0 B 0
parity: 0 B 0
stripe: 0 B 0
need_gc_gens: 0 B 0
need_discard: 0 B 0
capacity: 4.00 GiB 32768
(no label) (device 1): vdc rw
data buckets fragmented
free: 2.28 GiB 18652
sb: 3.00 MiB 25 124 KiB
journal: 32.0 MiB 256
btree: 14.1 MiB 113
user: 1.64 GiB 13722 38.5 MiB
cached: 0 B 0
parity: 0 B 0
stripe: 0 B 0
need_gc_gens: 0 B 0
need_discard: 0 B 0
capacity: 4.00 GiB 32768
(no label) (device 2): vdd rw
data buckets fragmented
free: 2.28 GiB 18640
sb: 3.00 MiB 25 124 KiB
journal: 32.0 MiB 256
btree: 16.0 MiB 128
user: 1.64 GiB 13719 38.6 MiB
cached: 0 B 0
parity: 0 B 0
stripe: 0 B 0
need_gc_gens: 0 B 0
need_discard: 0 B 0
capacity: 4.00 GiB 32768
next reply other threads:[~2024-03-02 2:14 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-02 2:14 Kent Overstreet [this message]
2024-03-03 18:49 ` [WIP] bcachefs fs usage update John Stoffel
2024-03-03 23:19 ` Kent Overstreet
2024-03-04 1:02 ` John Stoffel
2024-03-04 1:08 ` Kent Overstreet
2024-03-04 8:16 ` Martin Steigerwald
[not found] ` <CAMT0RQRsdLd9dg5jkpQ+gRTn0XJe=cU5Umsjs2npyvz6pCU61g@mail.gmail.com>
2024-03-04 13:44 ` Hannu Krosing
2024-03-05 0:00 ` John Stoffel
2024-03-05 12:33 ` Michael
-- strict thread matches above, loose matches on Subject: below --
2024-03-06 11:14 Mike Fleetwood
2024-03-08 1:23 ` Kent Overstreet
2024-03-08 23:37 ` Mike Fleetwood
2024-03-08 23:41 ` Kent Overstreet
2024-03-11 15:55 ` Mike Fleetwood
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=gajhq3iyluwmr44ee2fzacfpgpxmr2jurwqg6aeiab4lfila3p@b3l7bywr3yed \
--to=kent.overstreet@linux.dev \
--cc=linux-bcachefs@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
/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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).