[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH 19/26] x86/alternatives: NMI safe runtime patching



On Tue, Apr 07, 2020 at 10:03:16PM -0700, Ankur Arora wrote:
> @@ -1807,12 +1911,20 @@ static int __maybe_unused 
> text_poke_late(patch_worker_t worker, void *stage)
>       text_poke_state.state = PATCH_SYNC_DONE; /* Start state */
>       text_poke_state.primary_cpu = smp_processor_id();
>  
> +     text_poke_state.nmi_context = nmi;
> +
> +     if (nmi)
> +             register_nmi_handler(NMI_LOCAL, text_poke_nmi,
> +                                  NMI_FLAG_FIRST, "text_poke_nmi");
>       /*
>        * Run the worker on all online CPUs. Don't need to do anything
>        * for offline CPUs as they come back online with a clean cache.
>        */
>       ret = stop_machine(patch_worker, &text_poke_state, cpu_online_mask);
>  
> +     if (nmi)
> +             unregister_nmi_handler(NMI_LOCAL, "text_poke_nmi");
> +
>       return ret;
>  }

This is completely bonghits crazy.



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.