Re: [PATCH] set_irq_noprobe shouldn't be __init

From: Andrew Morton
Date: Fri Jan 08 2010 - 19:42:01 EST


On Tue, 5 Jan 2010 20:38:42 +0100
Jean Delvare <khali@xxxxxxxxxxxx> wrote:

> Non-__init functions need to call set_irq_noprobe() so this function
> shouldn't be marked __init. Also remove __init from set_irq_probe()
> for consistency.
>
> Signed-off-by: Jean Delvare <khali@xxxxxxxxxxxx>
> Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
> Cc: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>
> ---
> kernel/irq/chip.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> --- linux-2.6.33-rc2.orig/kernel/irq/chip.c 2009-12-18 08:34:52.000000000 +0100
> +++ linux-2.6.33-rc2/kernel/irq/chip.c 2010-01-05 17:21:38.000000000 +0100
> @@ -682,7 +682,7 @@ set_irq_chip_and_handler_name(unsigned i
> __set_irq_handler(irq, handle, 0, name);
> }
>
> -void __init set_irq_noprobe(unsigned int irq)
> +void set_irq_noprobe(unsigned int irq)
> {
> struct irq_desc *desc = irq_to_desc(irq);
> unsigned long flags;
> @@ -697,7 +697,7 @@ void __init set_irq_noprobe(unsigned int
> raw_spin_unlock_irqrestore(&desc->lock, flags);
> }
>
> -void __init set_irq_probe(unsigned int irq)
> +void set_irq_probe(unsigned int irq)
> {
> struct irq_desc *desc = irq_to_desc(irq);
> unsigned long flags;

These non-__init callers will instantly crash, surely? Are there any
reports of such crashes?

If you're talking about new code then what is the status of that code?

Right now I don't know if this patch is needed in 2.6.34, 2.6.33 or
2.6.32.x and earlier.

IOW: the changelog sucks :)

Thanks.

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