[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v6 06/29] libxc: make arch_setup_boot{init/late} xc_dom_arch hooks
This should not introduce any functional change. Signed-off-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx> Reviewed-by: Andrew Cooper <andrew.cooper@xxxxxxxxxx> Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx> Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> Cc: Ian Campbell <ian.campbell@xxxxxxxxxx> Cc: Wei Liu <wei.liu2@xxxxxxxxxx> --- Changes since v3: - Add Andrew Cooper Reviewed-by. - Add Wei Acked-by. --- tools/libxc/include/xc_dom.h | 7 ++----- tools/libxc/xc_dom_arm.c | 20 +++++++++++++------- tools/libxc/xc_dom_boot.c | 4 ++-- tools/libxc/xc_dom_x86.c | 10 ++++++++-- 4 files changed, 25 insertions(+), 16 deletions(-) diff --git a/tools/libxc/include/xc_dom.h b/tools/libxc/include/xc_dom.h index c4b994f..5c1bb0f 100644 --- a/tools/libxc/include/xc_dom.h +++ b/tools/libxc/include/xc_dom.h @@ -222,6 +222,8 @@ struct xc_dom_arch { int (*start_info) (struct xc_dom_image * dom); int (*shared_info) (struct xc_dom_image * dom, void *shared_info); int (*vcpu) (struct xc_dom_image * dom, void *vcpu_ctxt); + int (*bootearly) (struct xc_dom_image * dom); + int (*bootlate) (struct xc_dom_image * dom); /* arch-specific memory initialization. */ int (*meminit) (struct xc_dom_image * dom); @@ -401,11 +403,6 @@ static inline xen_pfn_t xc_dom_p2m(struct xc_dom_image *dom, xen_pfn_t pfn) return dom->p2m_host[pfn - dom->rambase_pfn]; } -/* --- arch bits --------------------------------------------------- */ - -int arch_setup_bootearly(struct xc_dom_image *dom); -int arch_setup_bootlate(struct xc_dom_image *dom); - /* * Local variables: * mode: C diff --git a/tools/libxc/xc_dom_arm.c b/tools/libxc/xc_dom_arm.c index 24776ba..7548dae 100644 --- a/tools/libxc/xc_dom_arm.c +++ b/tools/libxc/xc_dom_arm.c @@ -489,13 +489,20 @@ static int meminit(struct xc_dom_image *dom) return 0; } -int arch_setup_bootearly(struct xc_dom_image *dom) +int xc_dom_feature_translated(struct xc_dom_image *dom) +{ + return 1; +} + +/* ------------------------------------------------------------------------ */ + +static int bootearly(struct xc_dom_image *dom) { DOMPRINTF("%s: doing nothing", __FUNCTION__); return 0; } -int arch_setup_bootlate(struct xc_dom_image *dom) +static int bootlate(struct xc_dom_image *dom) { /* XXX * map shared info @@ -505,11 +512,6 @@ int arch_setup_bootlate(struct xc_dom_image *dom) return 0; } -int xc_dom_feature_translated(struct xc_dom_image *dom) -{ - return 1; -} - /* ------------------------------------------------------------------------ */ static struct xc_dom_arch xc_dom_32 = { @@ -524,6 +526,8 @@ static struct xc_dom_arch xc_dom_32 = { .shared_info = shared_info_arm, .vcpu = vcpu_arm32, .meminit = meminit, + .bootearly = bootearly, + .bootlate = bootlate, }; static struct xc_dom_arch xc_dom_64 = { @@ -538,6 +542,8 @@ static struct xc_dom_arch xc_dom_64 = { .shared_info = shared_info_arm, .vcpu = vcpu_arm64, .meminit = meminit, + .bootearly = bootearly, + .bootlate = bootlate, }; static void __init register_arch_hooks(void) diff --git a/tools/libxc/xc_dom_boot.c b/tools/libxc/xc_dom_boot.c index bf2cd7b..e6f7794 100644 --- a/tools/libxc/xc_dom_boot.c +++ b/tools/libxc/xc_dom_boot.c @@ -208,7 +208,7 @@ int xc_dom_boot_image(struct xc_dom_image *dom) DOMPRINTF_CALLED(dom->xch); /* misc stuff*/ - if ( (rc = arch_setup_bootearly(dom)) != 0 ) + if ( (rc = dom->arch_hooks->bootearly(dom)) != 0 ) return rc; /* collect some info */ @@ -255,7 +255,7 @@ int xc_dom_boot_image(struct xc_dom_image *dom) xc_dom_log_memory_footprint(dom); /* misc x86 stuff */ - if ( (rc = arch_setup_bootlate(dom)) != 0 ) + if ( (rc = dom->arch_hooks->bootlate(dom)) != 0 ) return rc; /* let the vm run */ diff --git a/tools/libxc/xc_dom_x86.c b/tools/libxc/xc_dom_x86.c index 07170c1..0f49e27 100644 --- a/tools/libxc/xc_dom_x86.c +++ b/tools/libxc/xc_dom_x86.c @@ -924,7 +924,9 @@ static int meminit_pv(struct xc_dom_image *dom) return rc; } -int arch_setup_bootearly(struct xc_dom_image *dom) +/* ------------------------------------------------------------------------ */ + +static int bootearly(struct xc_dom_image *dom) { DOMPRINTF("%s: doing nothing", __FUNCTION__); return 0; @@ -963,7 +965,7 @@ static int map_grant_table_frames(struct xc_dom_image *dom) return 0; } -int arch_setup_bootlate(struct xc_dom_image *dom) +static int bootlate_pv(struct xc_dom_image *dom) { static const struct { char *guest; @@ -1059,6 +1061,8 @@ static struct xc_dom_arch xc_dom_32_pae = { .shared_info = shared_info_x86_32, .vcpu = vcpu_x86_32, .meminit = meminit_pv, + .bootearly = bootearly, + .bootlate = bootlate_pv, }; static struct xc_dom_arch xc_dom_64 = { @@ -1073,6 +1077,8 @@ static struct xc_dom_arch xc_dom_64 = { .shared_info = shared_info_x86_64, .vcpu = vcpu_x86_64, .meminit = meminit_pv, + .bootearly = bootearly, + .bootlate = bootlate_pv, }; static void __init register_arch_hooks(void) -- 1.9.5 (Apple Git-50.3) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |