|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH 0/6] x86: break up post-boot non-order-zero alloc
On 05/04/2011 09:19, "Jan Beulich" <JBeulich@xxxxxxxxxx> wrote:
> With this, structure sizes are below page size, and no longer depend
> significantly on NR_CPUS. This series, however, doesn't eliminate
> all non-order-zero allocations that happen post boot (i.e. mostly
> during domain creation). Items that are known to need addressing
> are
> - nr_irqs-sized allocation of ->arch.irq_pirq[] in
> xen/arch/x86/domain.c:arch_domain_create()
> - ->nr_pirqs-sized allocations in
> xen/drivers/passthrough/io.c:pt_irq_create_bind_vtd()
> - ->nr_pirqs-sized allocation of ->arch.pirq_irq[] in
> xen/arch/x86/domain.c:arch_domain_create()
> - ->nr_pirqs-sized allocation of ->pirq_to_evtchn[] in
> xen/common/domain.c:domain_create()
I wonder whether some of these irq-indexed and pirq-indexed values could be
agregated together into two separate structs, and then keep them in
irq-indexed and a pirq-indexed radix trees? It might actually be more space
efficient if nr_irqs or nr_pirqs is large, quite apart from the benefit of
getting rid of the multi-page allocations.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|