All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Roger Pau Monné" <roger.pau@citrix.com>
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v3 0/3] x86/irq: fixes for CPU hot{,un}plug
Date: Fri, 14 Jun 2024 09:28:04 +0200	[thread overview]
Message-ID: <ZmvxBDomxxBjOYEK@macbook> (raw)
In-Reply-To: <20240613165617.42538-1-roger.pau@citrix.com>

Sorry, forgot to add the for-4.19 tag and Cc Oleksii.

Since we have taken the start of the series, we might as well take the
remaining patches (if other x86 maintainers agree) and attempt to
hopefully fix all the interrupt issues with CPU hotplug/unplug.

FTR: there are further issues when doing CPU hotplug/unplug from a PVH
dom0, but those are out of the scope for 4.19, as I haven't even
started to diagnose what's going on.

Thanks, Roger.

On Thu, Jun 13, 2024 at 06:56:14PM +0200, Roger Pau Monne wrote:
> Hello,
> 
> The following series aim to fix interrupt handling when doing CPU
> plug/unplug operations.  Without this series running:
> 
> cpus=`xl info max_cpu_id`
> while [ 1 ]; do
>     for i in `seq 1 $cpus`; do
>         xen-hptool cpu-offline $i;
>         xen-hptool cpu-online $i;
>     done
> done
> 
> Quite quickly results in interrupts getting lost and "No irq handler for
> vector" messages on the Xen console.  Drivers in dom0 also start getting
> interrupt timeouts and the system becomes unusable.
> 
> After applying the series running the loop over night still result in a
> fully usable system, no  "No irq handler for vector" messages at all, no
> interrupt loses reported by dom0.  Test with x2apic-mode={mixed,cluster}.
> 
> I've attempted to document all code as good as I could, interrupt
> handling has some unexpected corner cases that are hard to diagnose and
> reason about.
> 
> Some XenRT testing is undergoing to ensure no breakages.
> 
> Thanks, Roger.
> 
> Roger Pau Monne (3):
>   x86/irq: deal with old_cpu_mask for interrupts in movement in
>     fixup_irqs()
>   x86/irq: handle moving interrupts in _assign_irq_vector()
>   x86/irq: forward pending interrupts to new destination in fixup_irqs()
> 
>  xen/arch/x86/include/asm/apic.h |   5 +
>  xen/arch/x86/irq.c              | 163 +++++++++++++++++++++++++-------
>  2 files changed, 132 insertions(+), 36 deletions(-)
> 
> -- 
> 2.45.2
> 


  parent reply	other threads:[~2024-06-14  7:28 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-13 16:56 [PATCH v3 0/3] x86/irq: fixes for CPU hot{,un}plug Roger Pau Monne
2024-06-13 16:56 ` [PATCH v3 1/3] x86/irq: deal with old_cpu_mask for interrupts in movement in fixup_irqs() Roger Pau Monne
2024-06-17 13:18   ` [PATCH v3 for-4.19 " Jan Beulich
2024-06-18  8:11     ` Oleksii K.
2024-06-18 11:15     ` Roger Pau Monné
2024-06-13 16:56 ` [PATCH v3 2/3] x86/irq: handle moving interrupts in _assign_irq_vector() Roger Pau Monne
2024-06-17 13:31   ` [PATCH v3 for-4.19 " Jan Beulich
2024-06-18  8:16     ` Oleksii K.
2024-06-18 11:22     ` Roger Pau Monné
2024-06-13 16:56 ` [PATCH v3 3/3] x86/irq: forward pending interrupts to new destination in fixup_irqs() Roger Pau Monne
2024-06-17 13:41   ` Jan Beulich
2024-06-18 11:30     ` Roger Pau Monné
2024-06-18 14:34       ` Jan Beulich
2024-06-18 14:50         ` Roger Pau Monné
2024-06-18 16:30           ` Jan Beulich
2024-06-19  7:05             ` Roger Pau Monné
2024-06-19  7:24               ` Jan Beulich
2024-06-19  8:32                 ` Roger Pau Monné
2024-06-19  9:10                   ` Jan Beulich
2024-06-14  7:28 ` Roger Pau Monné [this message]
2024-06-14 11:52   ` [PATCH v3 0/3] x86/irq: fixes for CPU hot{,un}plug Oleksii K.
2024-06-14 12:33     ` Roger Pau Monné

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZmvxBDomxxBjOYEK@macbook \
    --to=roger.pau@citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=oleksii.kurochko@gmail.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.