These improvements to e2fsck's logging capabilities were motiviated by an fs corruption problem which caused the block group checksums to be incorrect, and so some uninitalized bitmaps got read into memory, and they contained garbage. This resulted in e2fsck pass 5 output which was extremely voluminous, and if the server was attached to a serial console, could potentially delay the boot sequence by hours, which in turn triggered a watchdog timer. To avoid similar problems causing secondary ripple effects that are far worse, we need to be able to control how much output gets sent to the console, while also allowing the full log files to be written to disk since it can contain valuable information. So these patches allow the system administrator to limit the number of problem reports which get sent to the console. The full, unredacted e2fsck output will still get written to the log file, however. An additional bonus of doing things this way is that some distributions have resisted using the logsave program to assure that fsck gets saved, and with the advent of systemd, this may be even harder to configure since the author of systemd doesn't believe in shell scripts. So this allows us to save the full set of fsck log files without having to mess with obscure and undocumented distro-specific boot setups, whether it is systemd or plymouth, or some other drug-induced nightmare that is supposedly an improvement on sysvinit scripts. It's an ext2/3/4-specific solution, but.... oh, well. - Ted Theodore Ts'o (5): e2fsck: add support for field widths in messages using %-expansion e2fsck: print the current and expected block group checksums e2fsck: print a notice when we've started suppressing a problem code e2fsck: add the max_count_problems setting in e2fsck.conf e2fsck: add logging capability e2fsck/Makefile.in | 186 +++++++++++------- e2fsck/e2fsck.c | 3 + e2fsck/e2fsck.conf.5.in | 146 ++++++++++++++ e2fsck/e2fsck.h | 17 ++- e2fsck/logfile.c | 383 +++++++++++++++++++++++++++++++++++++ e2fsck/message.c | 204 +++++++++++--------- e2fsck/problem.c | 40 +++-- e2fsck/problem.h | 3 +- e2fsck/super.c | 2 + e2fsck/unix.c | 266 +++++++++++++++----------- e2fsck/util.c | 99 ++++++---- tests/f_illitable_flexbg/expect.1 | 2 +- tests/f_unused_itable/expect.1 | 4 +- 13 files changed, 1023 insertions(+), 332 deletions(-) create mode 100644 e2fsck/logfile.c -- 1.7.9.107.g97f9a -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html