[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] arm: fix build after c/s 25477:e12e0b038219
>>> On 28.06.12 at 15:03, Keir Fraser <keir@xxxxxxx> wrote: > On 25/06/2012 11:54, "Jan Beulich" <JBeulich@xxxxxxxx> wrote: > >> Only x86 currently has a struct vcpu field arch.gdbsx_vcpu_event. But >> as the whole function domain_pause_for_debugger() is pointless to be >> compiled when there's no arch support, simply introduce another HAS_* >> macro, enabled only on x86. >> >> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> > > How did arch/arm build at all then, previously, with this function present > for a long time in common code? Prior to said c/s adding a reference to ->arch.gdbsx_vcpu_event, the function wasn't arch-specific at all. > Would a better fix be just to move the > function to arch/x86/domain.c, since it is only called by arch/x86? I'd say no - the function really ought to be generic. Any arch wanting gdbsx support would have to add a respective field to its arch_vcpu. Or alternatively the field itself should get moved into struct vcpu, perhaps dependent upon some CONFIG_*. (This is also why I didn't want to put in e.g. a CONFIG_X86 conditional, which would have been a smaller change.) Jan >> --- a/xen/Rules.mk >> +++ b/xen/Rules.mk >> @@ -51,6 +51,7 @@ CFLAGS-$(perfc) += -DPERF_COUNTE >> CFLAGS-$(perfc_arrays) += -DPERF_ARRAYS >> CFLAGS-$(lock_profile) += -DLOCK_PROFILE >> CFLAGS-$(HAS_ACPI) += -DHAS_ACPI >> +CFLAGS-$(HAS_GDBSX) += -DHAS_GDBSX >> CFLAGS-$(HAS_PASSTHROUGH) += -DHAS_PASSTHROUGH >> CFLAGS-$(frame_pointer) += -fno-omit-frame-pointer -DCONFIG_FRAME_POINTER >> >> --- a/xen/arch/x86/Rules.mk >> +++ b/xen/arch/x86/Rules.mk >> @@ -9,6 +9,7 @@ HAS_PASSTHROUGH := y >> HAS_NS16550 := y >> HAS_EHCI := y >> HAS_KEXEC := y >> +HAS_GDBSX := y >> xenoprof := y >> >> # >> --- a/xen/common/domain.c >> +++ b/xen/common/domain.c >> @@ -612,6 +612,7 @@ void vcpu_end_shutdown_deferral(struct v >> vcpu_check_shutdown(v); >> } >> >> +#ifdef HAS_GDBSX >> void domain_pause_for_debugger(void) >> { >> struct domain *d = current->domain; >> @@ -628,6 +629,7 @@ void domain_pause_for_debugger(void) >> if (current->arch.gdbsx_vcpu_event == 0) >> send_global_virq(VIRQ_DEBUGGER); >> } >> +#endif >> >> /* Complete domain destroy after RCU readers are not holding old > references. >> */ >> static void complete_domain_destroy(struct rcu_head *head) >> >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@xxxxxxxxxxxxx >> http://lists.xen.org/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |