|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH 0/6] x86: break up post-boot non-order-zero allocatio
While tmem is most affected by this, due to fragmentation it is generally
a bad idea to require runtime allocations of more than a single page in
size.
1: remove direct cpumask_t members from struct vcpu and struct domain
2: x86: split struct vcpu
3: x86: move pv-only members of struct vcpu to struct pv_vcpu
4: x86: split struct domain
5: x86: introduce alloc_vcpu_guest_context()
6: passthrough: use domain pirq as index of struct hvm_irq_dpci's hvm_timer
array
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()
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [PATCH 0/6] x86: break up post-boot non-order-zero allocations,
Jan Beulich <=
|
|
|
|
|