linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] e2fsck logging improvements
@ 2012-03-18 19:52 Theodore Ts'o
  2012-03-18 19:52 ` [PATCH 1/5] e2fsck: add support for field widths in messages using %-expansion Theodore Ts'o
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Theodore Ts'o @ 2012-03-18 19:52 UTC (permalink / raw)
  To: Ext4 Developers List; +Cc: Theodore Ts'o

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


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-03-19 22:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-18 19:52 [PATCH 0/5] e2fsck logging improvements Theodore Ts'o
2012-03-18 19:52 ` [PATCH 1/5] e2fsck: add support for field widths in messages using %-expansion Theodore Ts'o
2012-03-18 19:52 ` [PATCH 2/5] e2fsck: print the current and expected block group checksums Theodore Ts'o
2012-03-18 19:52 ` [PATCH 3/5] e2fsck: print a notice when we've started suppressing a problem code Theodore Ts'o
2012-03-18 23:17   ` Andreas Dilger
2012-03-19  0:25     ` Ted Ts'o
2012-03-19 22:43       ` Andreas Dilger
2012-03-18 19:52 ` [PATCH 4/5] e2fsck: add the max_count_problems setting in e2fsck.conf Theodore Ts'o
2012-03-18 19:52 ` [PATCH 5/5] e2fsck: add logging capability Theodore Ts'o

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).