lkml.org 
[lkml]   [2016]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [Xen-devel] [PATCH 2/2] xen/events: Convert to hotplug state machine
From
Date
On 15/08/16 15:46, Boris Ostrovsky wrote:
> From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
>
> Install the callbacks via the state machine.
[...]
> +static int xen_evtchn_cpu_dead(unsigned int cpu)
> +{
> + __evtchn_fifo_handle_events(cpu, true);
> + return 0;
> +}

I'm not familiar with the new state machine. When this is called, what
state is the CPU in?

In particular, local interrupts must be disabled and all non-percpu irqs
must have been migrated to other CPUs.


> int __init xen_evtchn_fifo_init(void)
> {
> @@ -456,7 +444,9 @@ int __init xen_evtchn_fifo_init(void)
>
> evtchn_ops = &evtchn_ops_fifo;
>
> - register_cpu_notifier(&evtchn_fifo_cpu_notifier);
> + cpuhp_setup_state_nocalls(CPUHP_XEN_EVTCHN_PREPARE,
> + "CPUHP_XEN_EVTCHN_PREPARE",
> + xen_evtchn_cpu_prepare, xen_evtchn_cpu_dead);
> out:
> put_cpu();
> return ret;
> diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
> index d6beeb9..c60a17c 100644
> --- a/include/linux/cpuhotplug.h
> +++ b/include/linux/cpuhotplug.h
> @@ -22,6 +22,7 @@ enum cpuhp_state {
> CPUHP_SMPCFD_PREPARE,
> CPUHP_RCUTREE_PREP,
> CPUHP_XEN_PREPARE,
> + CPUHP_XEN_EVTCHN_PREPARE,
> CPUHP_NOTIFY_PREPARE,
> CPUHP_TIMERS_DEAD,
> CPUHP_BRINGUP_CPU,
>

\
 
 \ /
  Last update: 2016-09-17 09:56    [W:1.705 / U:0.088 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site