bcachefs icon indicating copy to clipboard operation
bcachefs copied to clipboard

sysfs internal/disk_groups shows entry with no devices

Open samhug opened this issue 1 year ago • 1 comments

Is it expected for /sys/fs/bcachefs/*/internal/disk_groups to contain old entries with no devices?

Note: I'm running a patch to include the label in the below output (https://github.com/samhug/linux/commit/33612368501fe5699d27314ad80d99f0d63cc611)

# cat /sys/fs/bcachefs/a068e2aa-78bb-4c9d-842f-75cf3dbfd455/internal/disk_groups
[label hdd parent 0 devs sdb sdc] [label hdd1 parent 1 devs sdb] [label hdd2 parent 1 devs sdc] [label ssd parent 0 devs nvme4n1 nvme3n1 nvme1n1 nvme0n1] [label ssd1 parent 4 devs nvme3n1] [label ssd2 parent 4 devs nvme4n1] [label ssd3 parent 4 devs nvme1n1] [label ssd4 parent 4 devs nvme0n1] [label ssd5 parent 4 devs]

The last entry, label ssd5, has no devs I previously had a device labeled ssd.ssd5, but this was removed a while ago. I don't remember exactly how the device was removed, but I do remember running into problems doing it

bcachefs show-super /dev/nvme0n1
Device:                                     CT1000P3SSD8                            
External UUID:                             a068e2aa-78bb-4c9d-842f-75cf3dbfd455
Internal UUID:                             da355333-3c72-427e-be3a-57e3eed3ec7c
Magic number:                              c68573f6-66ce-90a9-d96a-60cf803df7ef
Device index:                              13
Label:                                     (none)
Version:                                   1.13: inode_has_child_snapshots
Version upgrade complete:                  1.13: inode_has_child_snapshots
Oldest version on disk:                    1.13: inode_has_child_snapshots
Created:                                   Sat Mar 30 18:34:35 2024
Sequence number:                           2724
Time of last write:                        Thu Oct 31 13:08:18 2024
Superblock size:                           8.05 KiB/1.00 MiB
Clean:                                     0
Devices:                                   6
Sections:                                  members_v1,crypt,replicas_v0,disk_groups,clean,journal_seq_blacklist,journal_v2,counters,members_v2,errors,ext,downgrade
Features:                                  lz4,zstd,journal_seq_blacklist_v3,reflink,new_siphash,inline_data,new_extent_overwrite,btree_ptr_v2,extents_above_btree_updates,btree_updates_journalled,reflink_inline_data,new_varint,journal_no_flush,alloc_v2,extents_across_btree_nodes
Compat features:                           alloc_info,alloc_metadata,extents_above_btree_updates_done,bformat_overflow_done

Options:
  block_size:                              4.00 KiB
  btree_node_size:                         256 KiB
  errors:                                  continue [fix_safe] panic ro 
  metadata_replicas:                       2
  data_replicas:                           2
  metadata_replicas_required:              1
  data_replicas_required:                  1
  encoded_extent_max:                      64.0 KiB
  metadata_checksum:                       none [crc32c] crc64 xxhash 
  data_checksum:                           none [crc32c] crc64 xxhash 
  compression:                             lz4
  background_compression:                  zstd
  str_hash:                                crc32c crc64 [siphash] 
  metadata_target:                         ssd
  foreground_target:                       ssd
  background_target:                       hdd
  promote_target:                          ssd
  erasure_code:                            0
  inodes_32bit:                            1
  shard_inode_numbers:                     1
  inodes_use_key_cache:                    1
  gc_reserve_percent:                      8
  gc_reserve_bytes:                        0 B
  root_reserve_percent:                    0
  wide_macs:                               0
  promote_whole_extents:                   1
  acl:                                     1
  usrquota:                                0
  grpquota:                                0
  prjquota:                                0
  journal_flush_delay:                     1000
  journal_flush_disabled:                  0
  journal_reclaim_delay:                   100
  journal_transaction_names:               1
  allocator_stuck_timeout:                 30
  version_upgrade:                         [compatible] incompatible none 
  nocow:                                   0

members_v2 (size 2032):
Device:                                    8
  Label:                                   ssd2 (5)
  UUID:                                    8975c957-cda5-4a87-a12b-66b281faef5f
  Size:                                    1.86 TiB
  read errors:                             0
  write errors:                            0
  checksum errors:                         2
  seqread iops:                            0
  seqwrite iops:                           0
  randread iops:                           0
  randwrite iops:                          0
  Bucket size:                             1.00 MiB
  First bucket:                            0
  Buckets:                                 1953514
  Last mount:                              Thu Oct 31 13:07:58 2024
  Last superblock write:                   2724
  State:                                   rw
  Data allowed:                            journal,btree,user
  Has data:                                journal,btree,user,cached
  Btree allocated bitmap blocksize:        64.0 MiB
  Btree allocated bitmap:                  0000000000000000000000000000010011100111000110001000000111101101
  Durability:                              1
  Discard:                                 1
  Freespace initialized:                   1
Device:                                    9
  Label:                                   hdd1 (1)
  UUID:                                    23685053-6ad2-4651-9171-8ca53a2ff975
  Size:                                    10.9 TiB
  read errors:                             0
  write errors:                            0
  checksum errors:                         0
  seqread iops:                            0
  seqwrite iops:                           0
  randread iops:                           0
  randwrite iops:                          0
  Bucket size:                             1.00 MiB
  First bucket:                            0
  Buckets:                                 11444224
  Last mount:                              Thu Oct 31 13:07:58 2024
  Last superblock write:                   2724
  State:                                   rw
  Data allowed:                            journal,btree,user
  Has data:                                journal,user
  Btree allocated bitmap blocksize:        1.00 B
  Btree allocated bitmap:                  0000000000000000000000000000000000000000000000000000000000000000
  Durability:                              1
  Discard:                                 0
  Freespace initialized:                   1
Device:                                    10
  Label:                                   hdd2 (2)
  UUID:                                    81bfd22d-430e-4a9e-9378-84545b6069d9
  Size:                                    10.9 TiB
  read errors:                             0
  write errors:                            0
  checksum errors:                         0
  seqread iops:                            0
  seqwrite iops:                           0
  randread iops:                           0
  randwrite iops:                          0
  Bucket size:                             1.00 MiB
  First bucket:                            0
  Buckets:                                 11444224
  Last mount:                              Thu Oct 31 13:07:58 2024
  Last superblock write:                   2724
  State:                                   rw
  Data allowed:                            journal,btree,user
  Has data:                                journal,user
  Btree allocated bitmap blocksize:        1.00 B
  Btree allocated bitmap:                  0000000000000000000000000000000000000000000000000000000000000000
  Durability:                              1
  Discard:                                 0
  Freespace initialized:                   1
Device:                                    11
  Label:                                   ssd1 (4)
  UUID:                                    77178b9b-7c68-4377-91d5-469297a16231
  Size:                                    466 GiB
  read errors:                             0
  write errors:                            0
  checksum errors:                         0
  seqread iops:                            0
  seqwrite iops:                           0
  randread iops:                           0
  randwrite iops:                          0
  Bucket size:                             512 KiB
  First bucket:                            0
  Buckets:                                 953880
  Last mount:                              Thu Oct 31 13:07:58 2024
  Last superblock write:                   2724
  State:                                   rw
  Data allowed:                            journal,btree,user
  Has data:                                journal,btree,user,cached
  Btree allocated bitmap blocksize:        8.00 MiB
  Btree allocated bitmap:                  0000000000000000000001000000000000000000000000111111111111111111
  Durability:                              1
  Discard:                                 1
  Freespace initialized:                   1
Device:                                    12
  Label:                                   ssd3 (6)
  UUID:                                    52e72585-a5c4-4169-aeb8-20be20d03f32
  Size:                                    932 GiB
  read errors:                             0
  write errors:                            0
  checksum errors:                         0
  seqread iops:                            0
  seqwrite iops:                           0
  randread iops:                           0
  randwrite iops:                          0
  Bucket size:                             512 KiB
  First bucket:                            0
  Buckets:                                 1907739
  Last mount:                              Thu Oct 31 13:07:58 2024
  Last superblock write:                   2724
  State:                                   rw
  Data allowed:                            journal,btree,user
  Has data:                                journal,btree,user,cached
  Btree allocated bitmap blocksize:        16.0 MiB
  Btree allocated bitmap:                  0000000000000000000000000000011110100000000000000000111010001111
  Durability:                              1
  Discard:                                 1
  Freespace initialized:                   1
Device:                                    13
  Label:                                   ssd4 (7)
  UUID:                                    1cc96964-a55f-49e9-aad0-c5fa957651ab
  Size:                                    932 GiB
  read errors:                             0
  write errors:                            0
  checksum errors:                         0
  seqread iops:                            0
  seqwrite iops:                           0
  randread iops:                           0
  randwrite iops:                          0
  Bucket size:                             512 KiB
  First bucket:                            0
  Buckets:                                 1907739
  Last mount:                              Thu Oct 31 13:07:58 2024
  Last superblock write:                   2724
  State:                                   rw
  Data allowed:                            journal,btree,user
  Has data:                                journal,btree,user,cached
  Btree allocated bitmap blocksize:        16.0 MiB
  Btree allocated bitmap:                  0000000000000000000000000000011111100000000000000000111110000111
  Durability:                              1
  Discard:                                 1
  Freespace initialized:                   1

errors (size 536):
journal_entries_missing                     1               Mon May 27 19:45:56 2024
journal_entry_replicas_not_marked           1               Mon May 27 19:45:56 2024
journal_entry_bkey_invalid                  22492704        Sun Apr 14 17:11:42 2024
btree_node_bad_magic                        8               Sat Jun 29 15:42:19 2024
btree_node_bad_seq                          1               Mon Jun 24 15:32:14 2024
btree_node_bad_bkey                         1               Mon Jun  3 18:49:16 2024
fs_usage_data_wrong                         1               Mon May 27 19:54:20 2024
fs_usage_cached_wrong                       1               Mon May 27 19:54:20 2024
fs_usage_nr_inodes_wrong                    2               Mon May 27 19:54:20 2024
fs_usage_replicas_wrong                     4               Mon May 27 19:54:20 2024
dev_usage_buckets_wrong                     12              Mon May 27 19:54:20 2024
dev_usage_sectors_wrong                     6               Mon May 27 19:54:20 2024
dev_usage_fragmented_wrong                  4               Mon May 27 19:54:20 2024
alloc_key_data_type_bad                     2               Mon Jun  3 18:49:16 2024
alloc_key_to_missing_lru_entry              1008            Sat Jun  8 08:59:02 2024
alloc_key_data_type_wrong                   8252            Fri Jun 21 17:30:51 2024
alloc_key_dirty_sectors_wrong               8254            Fri Jun 21 17:30:51 2024
alloc_key_cached_sectors_wrong              56              Mon May 27 19:54:19 2024
freespace_hole_missing                      3               Fri Jun 21 17:31:34 2024
backpointer_bucket_offset_wrong             44985408        Sun Apr 14 17:11:42 2024
ptr_crc_nonce_mismatch                      1               Wed Jun 26 21:55:24 2024
reflink_v_refcount_wrong                    28              Wed Jun 26 15:28:35 2024
reflink_p_to_missing_reflink_v              319             Wed Jun 26 15:24:27 2024
snapshot_tree_to_missing_subvol             1               Fri May 31 21:44:01 2024
inode_dir_wrong_nlink                       2               Tue Aug 20 12:59:18 2024
inode_wrong_nlink                           63168           Tue Aug 20 13:07:38 2024
inode_unreachable                           60668           Tue Aug 20 10:52:19 2024
dirent_to_missing_inode                     1               Mon Jun 10 19:55:15 2024
accounting_mismatch                         107             Thu Oct 17 07:02:08 2024
accounting_replicas_not_marked              2               Mon Jun  3 06:34:45 2024
accounting_key_junk_at_end                  324             Sat Aug 10 20:24:00 2024
accounting_key_replicas_nr_devs_0           498             Sat Aug 10 20:24:00 2024
accounting_key_version_0                    133             Thu Oct 17 10:29:01 2024

samhug avatar Oct 31 '24 23:10 samhug

this can happen due to devices being removed - we can't drop the disk groups entry as options may still reference it, and we don't want those danging

in the future we'll need a way to cleanup unused labels, after we get tracking for 'which files have options set'

koverstreet avatar Aug 04 '25 00:08 koverstreet