diff options
author | Karel Zak | 2019-05-09 13:59:54 +0200 |
---|---|---|
committer | Karel Zak | 2019-05-09 13:59:54 +0200 |
commit | 5fcdf204b033297486e221a80a7f3c0a30734ceb (patch) | |
tree | 13a0ccd16f41e52b3b5a16054bb13b703e72ccf1 | |
parent | bash-completion: add fstrim --quiet (diff) | |
download | kernel-qcow2-util-linux-5fcdf204b033297486e221a80a7f3c0a30734ceb.tar.gz kernel-qcow2-util-linux-5fcdf204b033297486e221a80a7f3c0a30734ceb.tar.xz kernel-qcow2-util-linux-5fcdf204b033297486e221a80a7f3c0a30734ceb.zip |
fstrim: affect only warnings by --quiet
We need the same return code from fstrim_filesystem() independently on
--quiet command line option.
Addresses: https://github.com/karelzak/util-linux/pull/791
Signed-off-by: Karel Zak <kzak@redhat.com>
-rw-r--r-- | Documentation/releases/v2.34-ReleaseNotes | 4 | ||||
-rw-r--r-- | sys-utils/fstrim.c | 13 |
2 files changed, 11 insertions, 6 deletions
diff --git a/Documentation/releases/v2.34-ReleaseNotes b/Documentation/releases/v2.34-ReleaseNotes index efd0be368..3e17fb9dd 100644 --- a/Documentation/releases/v2.34-ReleaseNotes +++ b/Documentation/releases/v2.34-ReleaseNotes @@ -32,6 +32,10 @@ The command unshare(1) now allows set user ID and group ID by new command line options -S/--setuid and -G/--setgid; and new options -R/--root and -w/--wd allows to set root and working directory (like nsenter(1)). +The command fstrim(8) does not suppress some well known trimming warnings by +default anymore. It's necessary to explicitly use a new command line option +--quiet (recommended for crond or systemd). + The command lscpu(1) now prints 'Frequency boost' and 'Vulnerability' fields. The caches calculation has been modified to print summary from all system caches rather than per code numbers. diff --git a/sys-utils/fstrim.c b/sys-utils/fstrim.c index 9491079c3..cae38cdff 100644 --- a/sys-utils/fstrim.c +++ b/sys-utils/fstrim.c @@ -113,10 +113,8 @@ static int fstrim_filesystem(struct fstrim_control *ctl, const char *path, const case EBADF: case ENOTTY: case EOPNOTSUPP: - if (ctl->quiet) { - rc = 1; - break; - } + rc = 1; + break; default: rc = -errno; } @@ -325,8 +323,11 @@ static int fstrim_all(struct fstrim_control *ctl) * This is reason why we ignore EOPNOTSUPP and ENOTTY errors * from discard ioctl. */ - if (fstrim_filesystem(ctl, tgt, src) < 0) + rc = fstrim_filesystem(ctl, tgt, src); + if (rc < 0) cnt_err++; + else if (rc == 1 && !ctl->quiet) + warnx(_("%s: the discard operation is not supported"), tgt); } ul_unref_path(wholedisk); @@ -451,7 +452,7 @@ int main(int argc, char **argv) return fstrim_all(&ctl); /* MNT_EX_* codes */ rc = fstrim_filesystem(&ctl, path, NULL); - if (rc == 1) + if (rc == 1 && !ctl.quiet) warnx(_("%s: the discard operation is not supported"), path); return rc == 0 ? EXIT_SUCCESS : EXIT_FAILURE; |