Re: [PATCH 0/2] irqchip: make non-modular code explicitly non-modular

From: Geert Uytterhoeven
Date: Mon Oct 12 2015 - 03:04:07 EST


Hi Paul,

On Mon, Oct 12, 2015 at 1:05 AM, Paul Gortmaker
<paul.gortmaker@xxxxxxxxxxxxx> wrote:
> In a previous merge window, we made changes to allow better
> delineation between modular and non-modular code in commit
> 0fd972a7d91d6e15393c449492a04d94c0b89351 ("module: relocate module_init
> from init.h to module.h"). This allows us to now ensure module code
> looks modular and non-modular code does not accidentally look modular
> just to avoid suffering build breakage.
>
> Here we target code that is, by nature of their Makefile and/or
> Kconfig settings, only available to be built-in, but implicitly
> presenting itself as being possibly modular by way of using modular
> headers, macros, and functions.
>
> The goal here is to remove that illusion of modularity from these
> files, but in a way that leaves the actual runtime unchanged.
> In doing so, we remove code that has never been tested and adds
> no value to the tree. And we continue the process of expecting a
> level of consistency between the Kconfig/Makefile of code and the
> code in use itself.
>
> Fortuntately the irqchip subsystem has just two instances. For
> comparison there are over 300 instances tree wide, resulting in a
> possible net removal of on the order of 5000 lines of unused code.
>
> Build tested on the latest linux-next, on ARM.
>
> Paul.
> --
>
> Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
> Cc: Magnus Damm <damm+renesas@xxxxxxxxxxxxx>
> Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
>
> Paul Gortmaker (2):
> drivers/irqchip: make irq-renesas-intc-irqpin.c explicitly non-modular
> drivers/irqchip: make irq-renesas-irqc.c explicitly non-modular
>
> drivers/irqchip/irq-renesas-intc-irqpin.c | 24 +-----------------------
> drivers/irqchip/irq-renesas-irqc.c | 30 +-----------------------------
> 2 files changed, 2 insertions(+), 52 deletions(-)

Both of these are "external interrupt controllers", meaning that on some boards
they are used to handle only interrupts from external devices (e.g. Ethernet),
which is optional.

Hence IMHO the bool should be changed to tristate instead.

Gr{oetje,eeting}s,

Geert

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

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
--
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/