From: Ian Campbell <Ian.Campbell@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Huang <w1.huang@samsung.com>,
keir@xen.org, stefano.stabellini@eu.citrix.com,
ian.jackson@eu.citrix.com, julien.grall@linaro.org, tim@xen.org,
jaeyong.yoo@samsung.com, xen-devel@lists.xen.org,
jbeulich@suse.com, yjhyun.yoo@samsung.com
Subject: Re: [RFC v3 1/6] xen/arm: Add basic save/restore support for ARM
Date: Wed, 14 May 2014 14:22:07 +0100 [thread overview]
Message-ID: <1400073727.29366.111.camel@kazak.uk.xensource.com> (raw)
In-Reply-To: <53734971.7040001@citrix.com>
On Wed, 2014-05-14 at 11:46 +0100, Andrew Cooper wrote:
> On 14/05/14 11:25, Ian Campbell wrote:
> > On Thu, 2014-05-08 at 23:11 +0100, Andrew Cooper wrote:
> >>> diff --git a/xen/include/public/arch-arm/hvm/save.h b/xen/include/public/arch-arm/hvm/save.h
> >>> index 75b8e65..8312e7b 100644
> >>> --- a/xen/include/public/arch-arm/hvm/save.h
> >>> +++ b/xen/include/public/arch-arm/hvm/save.h
> >>> @@ -3,6 +3,7 @@
> >>> * be saved along with the domain's memory and device-model state.
> >>> *
> >>> * Copyright (c) 2012 Citrix Systems Ltd.
> >>> + * Copyright (c) 2014 Samsung Electronics.
> >>> *
> >>> * Permission is hereby granted, free of charge, to any person obtaining a copy
> >>> * of this software and associated documentation files (the "Software"), to
> >>> @@ -26,6 +27,24 @@
> >>> #ifndef __XEN_PUBLIC_HVM_SAVE_ARM_H__
> >>> #define __XEN_PUBLIC_HVM_SAVE_ARM_H__
> >>>
> >>> +#define HVM_ARM_FILE_MAGIC 0x92385520
> >>> +#define HVM_ARM_FILE_VERSION 0x00000001
> >>> +
> >>> +/* Note: For compilation purpose hvm_save_header name is the same as x86,
> >>> + * but layout is different. */
> >>> +struct hvm_save_header
> >>> +{
> >>> + uint32_t magic; /* Must be HVM_ARM_FILE_MAGIC */
> >>> + uint32_t version; /* File format version */
> >>> + uint32_t cpuinfo; /* Record MIDR_EL1 info of saving machine */
> >>> +};
> >>> +DECLARE_HVM_SAVE_TYPE(HEADER, 1, struct hvm_save_header);
> >>> +
> >>> +/*
> >>> + * Largest type-code in use
> >>> + */
> >>> +#define HVM_SAVE_CODE_MAX 1
> >>> +
> >>> #endif
> >>>
> >>> /*
> >> Hmm - it is quite poor to have this magically named "hvm_save_header".
> > We frequently have arch interfaces where generic code requires arch code
> > to provide particular structs or functions etc. What is poor about this
> > particular instance of that pattern?
> Save/restore is currently asymmetric in this regard. The save side
> treats this x86 structure as common, whereas load is entirely arch specific.
>
> Fixing the asymmetry sensibly involves pushing the save side into arch code.
OK, that's an actual reason, thanks.
Ian.
next prev parent reply other threads:[~2014-05-14 13:22 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-08 21:18 [RFC v3 0/6] xen/arm: ARM save/restore/migration support Wei Huang
2014-05-08 21:18 ` [RFC v3 1/6] xen/arm: Add basic save/restore support for ARM Wei Huang
2014-05-08 22:11 ` Andrew Cooper
2014-05-08 22:20 ` Wei Huang
2014-05-09 8:56 ` Julien Grall
2014-05-14 10:27 ` Ian Campbell
2014-05-14 10:25 ` Ian Campbell
2014-05-14 10:46 ` Andrew Cooper
2014-05-14 13:22 ` Ian Campbell [this message]
2014-05-09 9:06 ` Julien Grall
2014-05-09 9:42 ` Jan Beulich
2014-05-14 10:37 ` Ian Campbell
2014-05-14 18:54 ` Wei Huang
2014-05-08 21:18 ` [RFC v3 2/6] xen/arm: Add save/restore support for ARM GIC V2 Wei Huang
2014-05-08 22:47 ` Andrew Cooper
2014-05-09 14:12 ` Wei Huang
2014-05-09 14:24 ` Ian Campbell
2014-05-11 16:15 ` Julien Grall
2014-05-13 14:53 ` Wei Huang
2014-05-09 9:17 ` Julien Grall
2014-05-14 11:07 ` Ian Campbell
2014-05-14 12:05 ` Julien Grall
2014-05-14 12:23 ` Tim Deegan
2014-05-14 13:24 ` Ian Campbell
2014-05-15 17:15 ` Julien Grall
2014-05-16 7:36 ` Ian Campbell
2014-05-08 21:18 ` [RFC v3 3/6] xen/arm: Add save/restore support for ARM arch timer Wei Huang
2014-05-08 23:02 ` Andrew Cooper
2014-05-11 9:01 ` Julien Grall
2014-05-11 8:58 ` Julien Grall
2014-05-12 8:35 ` Ian Campbell
2014-05-12 11:42 ` Julien Grall
2014-05-14 11:14 ` Ian Campbell
2014-05-14 12:13 ` Julien Grall
2014-05-14 13:23 ` Ian Campbell
2014-05-14 19:04 ` Wei Huang
2014-05-08 21:18 ` [RFC v3 4/6] xen/arm: Add save/restore support for guest core registers Wei Huang
2014-05-08 23:10 ` Andrew Cooper
2014-05-09 16:35 ` Wei Huang
2014-05-09 16:52 ` Ian Campbell
2014-05-11 9:06 ` Julien Grall
2014-05-14 11:16 ` Ian Campbell
2014-05-14 12:23 ` Julien Grall
2014-05-14 13:25 ` Ian Campbell
2014-05-14 13:31 ` Julien Grall
2014-05-14 11:37 ` Ian Campbell
2014-05-08 21:18 ` [RFC v3 5/6] xen/arm: Add log_dirty support for ARM Wei Huang
2014-05-08 23:46 ` Andrew Cooper
2014-05-14 11:51 ` Ian Campbell
2014-05-11 15:28 ` Julien Grall
2014-05-12 14:00 ` Wei Huang
2014-05-12 14:11 ` Julien Grall
2014-05-14 12:04 ` Ian Campbell
2014-05-14 11:57 ` Ian Campbell
2014-05-14 12:20 ` Julien Grall
2014-05-14 13:24 ` Ian Campbell
2014-05-14 13:18 ` Ian Campbell
2014-05-16 10:59 ` Julien Grall
2014-05-08 21:18 ` [RFC v3 6/6] xen/arm: Implement toolstack for xl restore/save/migration Wei Huang
2014-05-14 13:20 ` Ian Campbell
2014-05-14 13:24 ` Andrew Cooper
2014-05-11 9:23 ` [RFC v3 0/6] xen/arm: ARM save/restore/migration support Julien Grall
2014-05-12 14:37 ` Wei Huang
2014-05-13 14:41 ` Julien Grall
2014-05-12 14:17 ` Julien Grall
2014-05-12 14:52 ` Wei Huang
2014-05-12 15:01 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1400073727.29366.111.camel@kazak.uk.xensource.com \
--to=ian.campbell@citrix.com \
--cc=andrew.cooper3@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=jaeyong.yoo@samsung.com \
--cc=jbeulich@suse.com \
--cc=julien.grall@linaro.org \
--cc=keir@xen.org \
--cc=stefano.stabellini@eu.citrix.com \
--cc=tim@xen.org \
--cc=w1.huang@samsung.com \
--cc=xen-devel@lists.xen.org \
--cc=yjhyun.yoo@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).