[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH] x86: shrink 'struct domain', was already PAGE_SIZE
- To: Jan Beulich <JBeulich@xxxxxxxx>
- From: Corneliu ZUZU <czuzu@xxxxxxxxxxxxxxx>
- Date: Mon, 1 Feb 2016 12:58:21 +0200
- Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Keir Fraser <keir@xxxxxxx>, xen-devel@xxxxxxxxxxxxx
- Comment: DomainKeys? See http://domainkeys.sourceforge.net/
- Delivery-date: Mon, 01 Feb 2016 10:58:40 +0000
- Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=bitdefender.com; b=FNnTHTdPJ165sp5RShswL00K80JpfJD54LvIrHnc/MIjkdiDETQrsWvmtSE7ccc9otTUyfLl/y0rlA3imRuH22KN+17EZAGP1uMIK5a4ow/SkOSwernkYVnUNTylOMx6EhwseC3XtYQizUsl1qL4Q6WhhcQ2SMoVJqJunH6GE9HR1HhHtzg17wxf29ysPg6MDe3JP11zPqk8wn5WyM0SttupFbHRfMp/qQmGRFt9//R5dytLr0yLZKHHAzm26EnBe5oNWivFprLGwnmDdekG1PyamqcOkY8EyMhxvSJhOOUtLNtQQKX6Li5JFOLWuKkzoaUELMPw7FWLhxj2EMjoHA==; h=Received:Received:Received:Received:Received:Subject:To:References:Cc:From:Message-ID:Date:User-Agent:MIME-Version:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-BitDefender-Scanner:X-BitDefender-Spam:X-BitDefender-SpamStamp:X-BitDefender-CF-Stamp;
- List-id: Xen developer discussion <xen-devel.lists.xen.org>
On 2/1/2016 12:47 PM, Jan Beulich wrote:
On 01.02.16 at 08:42, <czuzu@xxxxxxxxxxxxxxx> wrote:
The X86 domain structure already occupied PAGE_SIZE (4096).
Looking @ the memory layout of the structure, we could see that
overall most was occupied by (used the pahole tool on domain.o):
* sizeof(domain.arch) = sizeof(arch_domain) = 3328 bytes.
* sizeof(domain.arch.hvm_domain) = 2224 bytes.
* sizeof(domain.arch.hvm_domain.pl_time) = 1088 bytes.
This patch attempts to free some space, by making the pl_time
field in hvm_domain dynamically allocated.
We xzalloc/xfree it @ hvm_domain_initialise/hvm_domain_destroy.
After this change, the domain structure shrunk w/ 1152 bytes (>1K!).
Signed-off-by: Corneliu ZUZU <czuzu@xxxxxxxxxxxxxxx>
Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
albeit ...
--- a/xen/include/asm-x86/hvm/vpt.h
+++ b/xen/include/asm-x86/hvm/vpt.h
@@ -139,6 +139,9 @@ struct pl_time { /* platform time */
/* Ensures monotonicity in appropriate timer modes. */
uint64_t last_guest_time;
spinlock_t pl_time_lock;
+ /* pl_time allocated dynamically, need to keep link to
+ * containing domain */
+ struct domain *domain;
};
... I wonder about the usefulness of this (malformed) comment. I'll
likely ditch it while committing.
Jan
Agreed, sorry about that and thanks.
Corneliu.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|