Messages in this thread | | | Date | Sat, 2 Aug 2008 22:04:28 -0700 | From | "Yinghai Lu" <> | Subject | Re: [PATCH 03/25] add dyn_array support |
| |
On Sat, Aug 2, 2008 at 9:55 PM, Johannes Weiner <hannes@saeurebad.de> wrote: > Hi, > > "Yinghai Lu" <yhlu.kernel@gmail.com> writes: > >> On Sat, Aug 2, 2008 at 9:03 PM, Johannes Weiner <hannes@saeurebad.de> wrote: >>> Hi, >>> >>> Yinghai Lu <yhlu.kernel@gmail.com> writes: >>> >>>> could have crazy big arrays and allocate them in bootmem at init stage. >>>> also also to allocate array according to size we need to use to avoid wasting >>>> memory >>>> use CONFIG_HAVE_DYN_ARRAY to enable it or not >>>> >>>> usage: >>>> >>>> |static struct irq_desc irq_desc_init __initdata = { >>>> | .status = IRQ_DISABLED, >>>> | .chip = &no_irq_chip, >>>> | .handle_irq = handle_bad_irq, >>>> | .depth = 1, >>>> | .lock = __SPIN_LOCK_UNLOCKED(irq_desc->lock), >>>> |#ifdef CONFIG_SMP >>>> | .affinity = CPU_MASK_ALL >>>> |#endif >>>> |}; >>>> | >>>> |static void __init init_work(void *data) >>>> |{ >>>> | struct dyn_array *da = data; >>>> | struct irq_desc *desc; >>>> | int i; >>>> | >>>> | desc = *da->name; >>> >>> Where *da->name might be NULL...
*da->name = __alloc_bootmem_nopanic(size, da->align, phys);
YH
| |