Skip to content
  • Rosen Penev's avatar
    btrfs-progs: treewide: Replace strerror(errno) with %m. · e4df433b
    Rosen Penev authored
    As btrfs is specific to Linux, %m can be used instead of strerror(errno)
    in format strings. This has some size reduction benefits for embedded
    systems.
    
    glibc, musl, and uclibc-ng all support %m as a modifier to printf.
    A quick glance at the BIONIC libc source indicates that it has
    support for %m as well. BSDs and Windows do not but I do believe
    them to be beyond the scope of btrfs-progs.
    
    Compiled sizes on Ubuntu 16.04:
    
    Before:
    3916512 btrfs
    233688  libbtrfs.so.0.1
    4899    bcp
    2367672 btrfs-convert
    2208488 btrfs-corrupt-block
    13302   btrfs-debugfs
    2152160 btrfs-debug-tree
    2136024 btrfs-find-root
    2287592 btrfs-image
    2144600 btrfs-map-logical
    2130760 btrfs-select-super
    2152608 btrfstune
    2131760 btrfs-zero-log
    2277752 mkfs.btrfs
    9166    show-blocks
    
    After:
    3908744 btrfs
    233256  libbtrfs.so.0.1
    4899    bcp
    2366560 btrfs-convert
    2207432 btrfs-corrupt-block
    13302   btrfs-debugfs
    2151104 btrfs-debug-tree
    2134968 btrfs-find-root
    2281864 btrfs-image
    2143536...
    e4df433b