Re: [PATCH] sparse_irq aka dyn_irq v13

From: Yinghai Lu
Date: Thu Nov 13 2008 - 17:42:10 EST


Andrew Morton wrote:

>> ...
>>
>>>> +static unsigned int kstat_irqs_legacy[NR_IRQS_LEGACY][NR_CPUS];
>>> Do these need to be 32-bit? Maybe they'll fit in 16-bit, dunno.
>>>
>> struct irq_desc {
>> unsigned int irq;
>> #ifdef CONFIG_SPARSE_IRQ
>> struct list_head list;
>> struct list_head hash_entry;
>> struct timer_rand_state *timer_rand_state;
>> unsigned int *kstat_irqs;
>
> That doesn't address my question.
>
> The above array can be very large. Can we halve its size by using
> 16-bit quantities? Will this code ever encounter IRQ numbers larger
> than 65536?
>

NR_CPUS=4096, NR_IRQS_LEGACY=16, and that array will be 256k bytes

later could change that alloc_bootmem, so NR_CPUS will be replaced to nr_cpu_ids

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