Re: [PATCH v2 2/4] printk/kdb: Handle more message headers

From: Steven Rostedt
Date: Fri Nov 11 2016 - 12:35:26 EST


On Wed, 9 Nov 2016 13:41:29 +0100
Petr Mladek <pmladek@xxxxxxxx> wrote:

> diff --git a/include/linux/printk.h b/include/linux/printk.h
> index eac1af8502bb..a0859e169bc3 100644
> --- a/include/linux/printk.h
> +++ b/include/linux/printk.h
> @@ -31,6 +31,14 @@ static inline const char *printk_skip_level(const char *buffer)
> return buffer;
> }
>
> +static inline const char *printk_skip_headers(const char *buffer)
> +{
> + while (printk_get_level(buffer))
> + buffer = printk_skip_level(buffer);

Hmm, shouldn't there be a length passed in here. What happens if buffer
ends with a header. Can't this overflow?

-- Steve

> +
> + return buffer;
> +}
> +
> #define CONSOLE_EXT_LOG_MAX 8192
>