WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH 0/6] x86: break up post-boot non-order-zero alloc

To: Jan Beulich <JBeulich@xxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH 0/6] x86: break up post-boot non-order-zero allocations
From: Keir Fraser <keir@xxxxxxx>
Date: Tue, 05 Apr 2011 12:59:14 +0100
Cc:
Delivery-date: Tue, 05 Apr 2011 05:01:58 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:sender:user-agent:date:subject:from:to :message-id:thread-topic:thread-index:in-reply-to:mime-version :content-type:content-transfer-encoding; bh=Aw1qdvP3X9nQ4aEvTkl/wNIM+rIifRt16oWYB9iuKLU=; b=BXshqx6iBYAExHfNJY1B9xJPYGYsd8vM7JSTO28C8xlitAUnTnWww0p/qpIXL5+YPr M/l4AGr2gwk6axGALjtMNXYiuYsRxAWgoXW5MNN7sjPO4zHnBgHkrp/LEbcTePqyoJmx 0T9VFWsLizuoozAMUyy7zIgPqWvekRbQv2tQw=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:user-agent:date:subject:from:to:message-id:thread-topic :thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; b=X39HRGxoG6GEXBsyIkMbjc5NxRiSOUyiVxm15EGyybEOy1ogXIv3EhmfDTSPQh5hqs FYaF5WsNzv3mA2jPf4EGdhSe0m4a1yyoHE431L1Hv9LmreOQ8szhBtCPL3+6JRa+E6XL z6dBfydKLyDOkb7637bzQnviuQ61gyv4t9/yk=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4D9AECA60200007800039F26@xxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcvziOHTeGEhfJPrgkm+WKk7L2q3XA==
Thread-topic: [Xen-devel] [PATCH 0/6] x86: break up post-boot non-order-zero allocations
User-agent: Microsoft-Entourage/12.28.0.101117
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