[PATCH 0/4] printk: start simplifying some flags

From: Alex Elder
Date: Wed Jul 16 2014 - 13:27:54 EST


Each log record has a "flags" field. The flags keep track of, for
instance, whether the record was saved in its entirety (as opposed
to being one of multiple records that should be merged as a single
unit). A log record's flags field alone is not currently sufficient
to know how the record should be formatted; you need to know the
previous record's flags field as well. I found understanding the
real effect of various combinations of these flags to be very
difficult, and was moved to try to do something about that.

This series includes three patches that begin the process of
simplifying how these flags are used and interpreted. They include
very long, detailed explanations (as small patches often do) because
I want my reasoning to be very clear and examined very closely. I
really don't want to break printk()...

The first patch simplifies some code based on the observation that
certain flag combinations never occur.

The second and third patch fix what I assert is a bug in two places.
The bug is that a LOG_PREFIX in a message should implicitly
terminate its predecessor, even if the predecessor was marked
LOG_CONT. I would really like to have someone else confirm
they agree my assertion here.

One trivial extra patch is included at the end of the series.

-Alex

This series, based on v3.16-rc4, is available here:
http://git.linaro.org/landing-teams/working/broadcom/kernel.git
Branch review/printk-flags

Alex Elder (4):
printk: LOG_CONT and LOG_NEWLINE are separate
printk: honor LOG_PREFIX in devkmsg_read()
printk: honor LOG_PREFIX in msg_print_text()
printk: correct some more typos

kernel/printk/printk.c | 40 ++++++++++++++++++----------------------
1 file changed, 18 insertions(+), 22 deletions(-)

--
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/