[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 3/3] xen/arm: don't try to re-register vcpu_info on cpu_hotplug.
Hi Stefano, On 19/10/15 17:55, Stefano Stabellini wrote: > diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c > index 6c09cc4..074b1a2 100644 > --- a/arch/arm/xen/enlighten.c > +++ b/arch/arm/xen/enlighten.c > @@ -93,6 +93,17 @@ static void xen_percpu_init(void) > int err; > int cpu = get_cpu(); > > + /* > + * VCPUOP_register_vcpu_info cannot be called twice for the same > + * vcpu, so if vcpu_info is already registered, just get out. This > + * can happen with cpu-hotplug. > + */ > + if (per_cpu(xen_vcpu, cpu) != NULL) { > + enable_percpu_irq(xen_events_irq, 0); > + put_cpu(); > + return; I might be too picky, but this function can be reworked to avoid duplicating the code. Something like: if (per_cpu(xen_vcpu, cpu) != NULL) goto skip_register_vcpu; > + } > + > pr_info("Xen: initializing cpu%d\n", cpu); > vcpup = per_cpu_ptr(xen_vcpu_info, cpu); > > @@ -131,6 +142,9 @@ static int xen_cpu_notification(struct notifier_block > *self, > case CPU_STARTING: > xen_percpu_init(); > break; > + case CPU_DYING: > + disable_percpu_irq(xen_events_irq); > + break; > default: > break; > } > -- Julien Grall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |