aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2013-11-09 23:13:17 +0100
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2013-11-09 23:41:34 +0100
commit140f4e351191d8633fd5bd6dcf38cdcccc1f07cb (patch)
tree9d2c6f727db5e51b6ce367b9f124b6108c02df88
parent1d39e33d46f32862da2ec1c394401239515206b8 (diff)
downloadbusybox-w32-140f4e351191d8633fd5bd6dcf38cdcccc1f07cb.tar.gz
busybox-w32-140f4e351191d8633fd5bd6dcf38cdcccc1f07cb.tar.bz2
busybox-w32-140f4e351191d8633fd5bd6dcf38cdcccc1f07cb.zip
fstrim: -17b
Also, use the name of the block device we found, not necessarily the one we got from the user: fstrim -v / /dev/sdj: 4711 bytes were trimmed Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
-rw-r--r--util-linux/fstrim.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/util-linux/fstrim.c b/util-linux/fstrim.c
index 2fa457b5e..00140b340 100644
--- a/util-linux/fstrim.c
+++ b/util-linux/fstrim.c
@@ -60,9 +60,7 @@ int fstrim_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
60int fstrim_main(int argc UNUSED_PARAM, char **argv) 60int fstrim_main(int argc UNUSED_PARAM, char **argv)
61{ 61{
62 struct fstrim_range range; 62 struct fstrim_range range;
63 char *arg_o; 63 char *arg_o, *arg_l, *arg_m, *bd;
64 char *arg_l;
65 char *arg_m;
66 unsigned opts; 64 unsigned opts;
67 int fd; 65 int fd;
68 66
@@ -96,16 +94,15 @@ int fstrim_main(int argc UNUSED_PARAM, char **argv)
96 if (opts & OPT_m) 94 if (opts & OPT_m)
97 range.minlen = xatoull_sfx(arg_m, fstrim_sfx); 95 range.minlen = xatoull_sfx(arg_m, fstrim_sfx);
98 96
99 if (find_block_device(argv[optind])) { 97 bd = find_block_device(*(argv += optind));
100 fd = xopen_nonblocking(argv[optind]); 98 if (bd) {
99 fd = xopen_nonblocking(bd);
101 xioctl(fd, FITRIM, &range); 100 xioctl(fd, FITRIM, &range);
102 if (ENABLE_FEATURE_CLEAN_UP) 101 if (ENABLE_FEATURE_CLEAN_UP)
103 close(fd); 102 close(fd);
104 103
105 if (opts & OPT_v) 104 if (opts & OPT_v)
106 printf("%s: %llu bytes were trimmed\n", argv[optind], range.len); 105 printf("%s: %llu bytes were trimmed\n", bd, range.len);
107 } 106 }
108
109 return EXIT_SUCCESS; 107 return EXIT_SUCCESS;
110} 108}
111