Strange compress behavior under /usr

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear folks, 

My problem is that new file created at /usr won't be compressed.

I accenticly that none of my files under /usr is compressed[1], so I
tried to run `sudo btrfs fi def -czstd -v -r /usr` to compress them,
that seems to work. And `sudo compsize /usr` now gives
Processed 431312 files, 224528 regular extents (230971 refs), 253758
inline.
Type       Perc     Disk Usage   Uncompressed Referenced  
TOTAL       56%      7.2G          12G          13G       
none       100%      3.5G         3.5G         3.5G       
zstd        39%      3.6G         9.2G         9.7G 

This seems pretty good, but when I am testing dding to dump a file to
/usr to test compress for new file, problem happens:

[root@yan-desktop /]# dd if=/dev/zero of=/usr/1 bs=10240 count=10000
记录了10000+0 的读入
记录了10000+0 的写出
102400000字节(102 MB,98 MiB)已复制,0.0426441 s,2.4 GB/s
[root@yan-desktop /]# dd if=/dev/zero of=/etc/1 bs=10240 count=10000
记录了10000+0 的读入
记录了10000+0 的写出
102400000字节(102 MB,98 MiB)已复制,0.0585055 s,1.8 GB/s
[root@yan-desktop /]# compsize /usr/1
Processed 1 file, 1 regular extents (1 refs), 0 inline.
Type       Perc     Disk Usage   Uncompressed Referenced  
TOTAL      100%       97M          97M          97M       
none       100%       97M          97M          97M       
[root@yan-desktop /]# compsize /etc/1
Processed 1 file, 782 regular extents (782 refs), 0 inline.
Type       Perc     Disk Usage   Uncompressed Referenced  
TOTAL        3%      3.0M          97M          97M       
zstd         3%      3.0M          97M          97M       

Just ignore those Chinese output by dd, it doesn't important... But as
you can see: file created at /usr/1 is not compressed at all while file
created at /etc/1 gets compressed. There should not be any difficult to
compress all-zero contents for zstd.

There should not be so much difference between /usr and /etc, they are
in same subvolume named "root" mounted at /.

[root@yan-desktop /]# btrfs su li /
ID 256 gen 1530662 top level 5 path home
ID 257 gen 1530662 top level 5 path root
ID 266 gen 1530614 top level 257 path var/lib/machines
ID 292 gen 1530585 top level 257 path var/lib/mock
...[some container storage subvolumes]

and mount options for / is
rw,noatime,seclabel,compress=zstd:3,ssd,space_cache=v2,subvolid=257,sub
vol=/root (subvol=root,noatime,compress=zstd in fstab)

lsattr /|grep -E "var|etc" gives
-------------------- /etc
-------------------- /var

`btrfs property get /usr` or `btrfs property get /etc` gives empty
output.

How do I troubleshoot this problem?

[1] That is also a problem since I setup compress after upgrading to
fedora 34, and have done many package updates since then. So new
extents written to /usr should be compressed while compsize reports
none of them.

-- 
Qiyu Yan
GPG keyid: 0x4FC914F065F2DF12
About: https://fedoraproject.org/wiki/User:Yanqiyu




Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux