[PATCH 00/04] dyn_array and nr_irqs support v3 -- addon

From: Yinghai Lu
Date: Mon Aug 04 2008 - 06:10:59 EST


use pre_allocate array and list to index struct with irq_no to avoid
wasting struct between irq

01: x86_64: use get_irq_desc together with dyn_array
02: x86: add get_irq_cfg in io_apic_64.c
03: x86: put timer_rand_state pointer into irq_desc
04: x86: put irq_2_pin pointer into irq_cfg - 64bit

got:
dyn_array irq_2_pin_head+0x0/0x8 size:0x10 nr:32 align:0x10
dyn_array irq_cfgx+0x0/0x8 size:0x120 nr:32 align:0x1000
dyn_array irq_desc+0x0/0x8 size:0x200 nr:32 align:0x1000
dyn_array irq_2_iommu+0x0/0x8 size:0x10 nr:96 align:0x1000
dyn_array total_size: 0x8200
dyn_array irq_2_pin_head+0x0/0x8 ==> [0x28028000 - 0x28028200]
dyn_array irq_cfgx+0x0/0x8 ==> [0x28029000 - 0x2802b400]
dyn_array irq_desc+0x0/0x8 ==> [0x2802c000 - 0x28030000]
dyn_array irq_2_iommu+0x0/0x8 ==> [0x28030000 - 0x28030600]
per_cpu_dyn_array per_cpu__kstat+0x48/0x50 size:0x4 nr:96 align:0x8

irq_cfg/irq_desc will increase by 32 automatically, and the use one by one.

to do:
1. will work ong irq_2_iommu: put it in irq_desc or irq_cfg?
2. will update Eric's patch to move kstat_irqs from per cpu to irq_desc...
3. after that will clean up nr_irqs, and try to kill it

Thanks

Yinghai Lu

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