Re: [PATCH] printk: Remove no longer used second struct cont

From: Sergey Senozhatsky
Date: Thu Dec 15 2016 - 20:50:33 EST


On (12/15/16 17:39), Joe Perches wrote:
> On Fri, 2016-12-16 at 10:37 +0900, Sergey Senozhatsky wrote:
> > On (12/15/16 17:23), Petr Mladek wrote:
> > > On Thu 2016-12-15 13:53:58, Geert Uytterhoeven wrote:
> > > > If CONFIG_PRINTK=n:
> > > >
> > > > kernel/printk/printk.c:1893: warning: âcontâ defined but not used
> > > >
> > > > Note that there are actually two different struct cont definitions and
> > > > objects: the first one is used if CONFIG_PRINTK=y, the second one became
> > > > unused by removing console_cont_flush().
> > > >
> > > > Fixes: 5c2992ee7fd8a29d ("printk: remove console flushing special cases for partial buffered lines")
> > >
> > > Great catch. It seems that nobody tried the build without CONFIG_PRINTK
> > > at that time.
> >
> > ok... since the patch is a cosmetic tweak... can we add several more
> > cosmetic changes to it? yes, I know, N things in one patch is "a bad thing",
> > but those extra changes don't deserve to be in a separate patch.
> >
> > basically I'm talking about a bunch of 80-cols fixups.
> > if it's irrelevant then feel free to ignore it.
>
> While it might be nice to do some 80 column wrapping,
> the most common wrap style is to the open parenthesis.

indeed. good morning to me. updated version below.


> I'd also like to split up printk.c into a bunch of
> smaller, more logically self-contained files eventually.

yes, I think you mentioned that before. well, I'm not sure I
see why would it make anyting better/simpler.

---

kernel/printk/printk.c | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
index bc2e220ed2b0..2319adaf2af2 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -1194,7 +1194,8 @@ static size_t print_prefix(const struct printk_log *msg, bool syslog, char *buf)
return len;
}

-static size_t msg_print_text(const struct printk_log *msg, bool syslog, char *buf, size_t size)
+static size_t msg_print_text(const struct printk_log *msg, bool syslog,
+ char *buf, size_t size)
{
const char *text = log_text(msg);
size_t text_size = msg->text_len;
@@ -1600,7 +1601,8 @@ static void cont_flush(void)
cont.len = 0;
}

-static bool cont_add(int facility, int level, enum log_flags flags, const char *text, size_t len)
+static bool cont_add(int facility, int level, enum log_flags flags,
+ const char *text, size_t len)
{
/*
* If ext consoles are present, flush and skip in-kernel
@@ -1636,7 +1638,9 @@ static bool cont_add(int facility, int level, enum log_flags flags, const char *
return true;
}

-static size_t log_output(int facility, int level, enum log_flags lflags, const char *dict, size_t dictlen, char *text, size_t text_len)
+static size_t log_output(int facility, int level, enum log_flags lflags,
+ const char *dict, size_t dictlen,
+ char *text, size_t text_len)
{
/*
* If an earlier line was buffered, and we're a continuation
@@ -1651,7 +1655,10 @@ static size_t log_output(int facility, int level, enum log_flags lflags, const c
cont_flush();
}

- /* Skip empty continuation lines that couldn't be added - they just flush */
+ /*
+ * Skip empty continuation lines that couldn't be
+ * added - they just flush
+ */
if (!text_len && (lflags & LOG_CONT))
return 0;

@@ -1662,7 +1669,8 @@ static size_t log_output(int facility, int level, enum log_flags lflags, const c
}

/* Store it in the record log */
- return log_store(facility, level, lflags, 0, dict, dictlen, text, text_len);
+ return log_store(facility, level, lflags, 0, dict, dictlen,
+ text, text_len);
}

asmlinkage int vprintk_emit(int facility, int level,
@@ -1777,7 +1785,8 @@ asmlinkage int vprintk_emit(int facility, int level,
if (dict)
lflags |= LOG_PREFIX|LOG_NEWLINE;

- printed_len += log_output(facility, level, lflags, dict, dictlen, text, text_len);
+ printed_len += log_output(facility, level, lflags, dict, dictlen,
+ text, text_len);

logbuf_cpu = UINT_MAX;
raw_spin_unlock(&logbuf_lock);