diff options
author | Rosen Penev <rosenp@gmail.com> | 2018-01-07 13:54:21 -0800 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2018-01-31 15:14:03 +0100 |
commit | e4df433b8a2d5ef944ab4764a5ad237bcdbd1fdc (patch) | |
tree | 19aa758dee389cea7c86c68ce1c8cc8e9a52836c /mkfs/main.c | |
parent | 24103f42ad7a65457a62ae5c0190ea0e428cb14b (diff) |
btrfs-progs: treewide: Replace strerror(errno) with %m.
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 btrfs-map-logical
2129704 btrfs-select-super
2151552 btrfstune
2130696 btrfs-zero-log
2276272 mkfs.btrfs
9166 show-blocks
Total savings: 23928 (24 kilo)bytes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'mkfs/main.c')
-rw-r--r-- | mkfs/main.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/mkfs/main.c b/mkfs/main.c index 9bb1f602..e376cd03 100644 --- a/mkfs/main.c +++ b/mkfs/main.c @@ -985,12 +985,13 @@ int main(int argc, char **argv) fd = open(file, oflags, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH); if (fd < 0) { - error("unable to open %s: %s", file, strerror(errno)); + error("unable to open %s: %m", file); goto error; } + ret = fstat(fd, &statbuf); if (ret < 0) { - error("unable to stat %s: %s", file, strerror(errno)); + error("unable to stat %s: %m", file); ret = -errno; goto error; } @@ -1029,8 +1030,7 @@ int main(int argc, char **argv) path = argv[i]; ret = test_minimum_size(path, min_dev_size); if (ret < 0) { - error("failed to check size for %s: %s", - path, strerror(-ret)); + error("failed to check size for %s: %m", path); goto error; } if (ret > 0) { @@ -1055,7 +1055,7 @@ int main(int argc, char **argv) */ fd = open(file, O_RDWR); if (fd < 0) { - error("unable to open %s: %s", file, strerror(errno)); + error("unable to open %s: %m", file); goto error; } ret = btrfs_prepare_device(fd, file, &dev_block_count, block_count, @@ -1157,7 +1157,7 @@ int main(int argc, char **argv) */ fd = open(file, O_RDWR); if (fd < 0) { - error("unable to open %s: %s", file, strerror(errno)); + error("unable to open %s: %m", file); goto error; } ret = btrfs_device_already_in_root(root, fd, |