Mailing List Archive

[PATCH 3/5] x86/build: restrict contents of asm-offsets.h when !HVM / !PV
This file has a long dependencies list (through asm-offsets.[cs]) and a
long list of dependents. IOW if any of the former changes, all of the
latter will be rebuilt, even if there's no actual change to the
generated file. Therefore avoid producing symbols we don't actually
need, depending on configuration.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/x86_64/asm-offsets.c
+++ b/xen/arch/x86/x86_64/asm-offsets.c
@@ -84,6 +84,7 @@ void __dummy__(void)
DEFINE(_VGCF_syscall_disables_events, _VGCF_syscall_disables_events);
BLANK();

+#ifdef CONFIG_HVM
OFFSET(VCPU_svm_vmcb_pa, struct vcpu, arch.hvm.svm.vmcb_pa);
OFFSET(VCPU_svm_vmcb, struct vcpu, arch.hvm.svm.vmcb);
BLANK();
@@ -99,6 +100,7 @@ void __dummy__(void)
OFFSET(VCPU_nhvm_p2m, struct vcpu, arch.hvm.nvcpu.nv_p2m);
OFFSET(VCPU_nsvm_hap_enabled, struct vcpu, arch.hvm.nvcpu.u.nsvm.ns_hap_enabled);
BLANK();
+#endif

#ifdef CONFIG_PV
OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
@@ -128,6 +130,7 @@ void __dummy__(void)
DEFINE(CPUINFO_sizeof, sizeof(struct cpu_info));
BLANK();

+#ifdef CONFIG_PV
OFFSET(TRAPINFO_eip, struct trap_info, address);
OFFSET(TRAPINFO_cs, struct trap_info, cs);
OFFSET(TRAPINFO_flags, struct trap_info, flags);
@@ -139,6 +142,7 @@ void __dummy__(void)
OFFSET(TRAPBOUNCE_cs, struct trap_bounce, cs);
OFFSET(TRAPBOUNCE_eip, struct trap_bounce, eip);
BLANK();
+#endif

OFFSET(VCPUMSR_spec_ctrl_raw, struct vcpu_msrs, spec_ctrl.raw);
BLANK();
Re: [PATCH 3/5] x86/build: restrict contents of asm-offsets.h when !HVM / !PV [ In reply to ]
On Wed, Nov 25, 2020 at 09:49:54AM +0100, Jan Beulich wrote:
> This file has a long dependencies list (through asm-offsets.[cs]) and a
> long list of dependents. IOW if any of the former changes, all of the
> latter will be rebuilt, even if there's no actual change to the
> generated file. Therefore avoid producing symbols we don't actually
> need, depending on configuration.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

I think that replies my question on the previous patch, hence you can
add:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

To both.

Thanks, Roger.