2022-09-23 13:36:05

by Lubomir Rintel

[permalink] [raw]
Subject: [PATCH] tune2fs: print error message when closing the fs fails

I encountered an I/O error on writing the superblock on a drive:

...
pwrite64(3, ..., 114688, 97844727808) = 114688
fsync(3) = -1 EIO (Input/output error)
close(3) = 0
...

The error was silently ignored, only indicated by the exit value. Let's
print an error message.

The error message was taken from mke2fs in order to reuse the
translations.

Signed-off-by: Lubomir Rintel <[email protected]>
---
misc/tune2fs.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/misc/tune2fs.c b/misc/tune2fs.c
index 088f87e5..d8ba4415 100644
--- a/misc/tune2fs.c
+++ b/misc/tune2fs.c
@@ -3745,5 +3745,13 @@ closefs:

if (feature_64bit)
convert_64bit(fs, feature_64bit);
- return (ext2fs_close_free(&fs) ? 1 : rc);
+
+ retval = ext2fs_close_free(&fs);
+ if (retval) {
+ com_err("tune2fs", retval,
+ _("while writing out and closing file system"));
+ rc = 1;
+ }
+
+ return rc;
}
--
2.37.3