With a filesystem that contains a very large amount of hardlinks
the time to mount the filesystem skyrockets to around 15 minutes
on 6.9.11-200.fc40.x86_64 as compared to around 1 second on
6.8.10-300.fc40.x86_64, this of course makes booting drop
into emergency mode if the filesystem is in /etc/fstab. A git bisect
nails the offending commit as 14dd46cf31f4aaffcf26b00de9af39d01ec8d547.
The filesystem is a collection of daily snapshots of a live filesystem
collected over a number of years, organized as a storage of unique files,
that are reflinked to inodes that contain the actual {owner,group,permission,
mtime}, and these inodes are hardlinked into the daily snapshot trees.
The numbers for the filesystem are:
Total file size: 3.6e+12 bytes
Unique files: 12.4e+06
Reflink inodes: 18.6e+06
Hardlinks: 15.7e+09
Timing between the systems are:
6.8.10-300.fc40.x86_64:
# time mount /dev/vg1/test /test
real 0m0.835s
user 0m0.002s
sys 0m0.014s
6.9.11-200.fc40.x86_64:
# time mount /dev/vg1/test /test
real 15m36.508s
user 0m0.000s
sys 0m27.628s
(iotop reports 1-4 MB/s)