Re: [patch 20/47] x86: Remove useless reinitialization of irqdescriptors

From: Thomas Gleixner
Date: Sun Oct 03 2010 - 14:27:14 EST


On Sun, 3 Oct 2010, Eric W. Biederman wrote:

> Thomas Gleixner <tglx@xxxxxxxxxxxxx> writes:
>
> > The descriptors are already initialized in exaclty this way.
>
> They aren't only status is initialized exactly that way.

Err.

SPARSE_IRQ=n:

struct irq_desc irq_desc[NR_IRQS] __cacheline_aligned_in_smp = {
[0 ... NR_IRQS-1] = {
.status = IRQ_DISABLED,
.chip = &no_irq_chip,
.handle_irq = handle_bad_irq,
.depth = 1,
.lock = __RAW_SPIN_LOCK_UNLOCKED(irq_desc->lock),
}
};

So action == NULL and depth == 1

SPARSE_IRQ=y:

allocates with kzalloc which makes action == NULL and depth is set in
the init function to 1.

That's true for mainline and after the rework as well.

Thanks,

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