Re: [PATCH 2/4] dev_printk: Add and use dev_no_printk()

From: Geert Uytterhoeven
Date: Wed Feb 28 2024 - 14:34:15 EST


Hi Andy,

On Wed, Feb 28, 2024 at 6:39 PM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> On Wed, Feb 28, 2024 at 03:00:03PM +0100, Geert Uytterhoeven wrote:
> > When printk-indexing is enabled, each dev_printk() invocation emits a
> > pi_entry structure. This is even true when the dev_printk() is
> > protected by an always-false check, as is typically the case for debug
> > messages: while the actual code to print the message is optimized out by
> > the compiler, the pi_entry structure is still emitted.
> >
> > Avoid emitting pi_entry structures for unavailable dev_printk() kernel
> > messages by:
> > 1. Introducing a dev_no_printk() helper, mimicked after the existing
> > no_printk() helper, which calls _dev_printk() instead of
> > dev_printk(),
> > 2. Replacing all "if (0) dev_printk(...)" constructs by calls to the
> > new helper.
> >
> > This reduces the size of an arm64 defconfig kernel with
> > CONFIG_PRINTK_INDEX=y by 957 KiB.
>
> ...
>
> > +/*
> > + * Dummy dev_printk for disabled debugging statements to use whilst maintaining
>
> dev_printk()

I fully agree. But the surrounding comments don't, so I gave in.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68korg

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds