From: "Roger Pau Monné" <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 3/7] x86/irq: limit interrupt movement done by fixup_irqs()
Date: Wed, 12 Jun 2024 10:10:37 +0200 [thread overview]
Message-ID: <ZmlX_cxqJLerZKee@macbook> (raw)
In-Reply-To: <5660db44-b169-44e3-9439-67d3b55bcac0@suse.com>
On Tue, Jun 11, 2024 at 11:59:39AM +0200, Jan Beulich wrote:
> On 10.06.2024 16:20, Roger Pau Monne wrote:
> > The current check used in fixup_irqs() to decide whether to move around
> > interrupts is based on the affinity mask, but such mask can have all bits set,
> > and hence is unlikely to be a subset of the input mask. For example if an
> > interrupt has an affinity mask of all 1s, any input to fixup_irqs() that's not
> > an all set CPU mask would cause that interrupt to be shuffled around
> > unconditionally.
> >
> > What fixup_irqs() care about is evacuating interrupts from CPUs not set on the
> > input CPU mask, and for that purpose it should check whether the interrupt is
> > assigned to a CPU not present in the input mask. Assume that ->arch.cpu_mask
> > is a subset of the ->affinity mask, and keep the current logic that resets the
> > ->affinity mask if the interrupt has to be shuffled around.
> >
> > Doing the affinity movement based on ->arch.cpu_mask requires removing the
> > special handling to ->arch.cpu_mask done for high priority vectors, otherwise
> > the adjustment done to cpu_mask makes them always skip the CPU interrupt
> > movement.
> >
> > While there also adjust the comment as to the purpose of fixup_irqs().
> >
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> Aiui this is independent of patch 1, so could go in while we still settle on
> how to word things there?
I think so, the issue patch 1 fixes is independent from the rest of the
series.
Thanks, Roger.
next prev parent reply other threads:[~2024-06-12 8:10 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-10 14:20 [PATCH v2 0/7] x86/irq: fixes for CPU hot{,un}plug Roger Pau Monne
2024-06-10 14:20 ` [PATCH v2 1/7] x86/smp: do not use shorthand IPI destinations in CPU hot{,un}plug contexts Roger Pau Monne
2024-06-11 7:42 ` Jan Beulich
2024-06-12 8:09 ` Roger Pau Monné
2024-06-12 8:56 ` Jan Beulich
2024-06-12 10:07 ` Oleksii K.
2024-06-10 14:20 ` [PATCH v2 2/7] x86/irq: describe how the interrupt CPU movement works Roger Pau Monne
2024-06-11 7:44 ` Jan Beulich
2024-06-12 10:08 ` Oleksii K.
2024-06-10 14:20 ` [PATCH v2 3/7] x86/irq: limit interrupt movement done by fixup_irqs() Roger Pau Monne
2024-06-11 9:59 ` Jan Beulich
2024-06-12 8:10 ` Roger Pau Monné [this message]
2024-06-12 10:13 ` Oleksii K.
2024-06-10 14:20 ` [PATCH v2 4/7] x86/irq: restrict CPU movement in set_desc_affinity() Roger Pau Monne
2024-06-11 10:20 ` Jan Beulich
2024-06-12 8:31 ` Roger Pau Monné
2024-06-10 14:20 ` [PATCH v2 5/7] x86/irq: deal with old_cpu_mask for interrupts in movement in fixup_irqs() Roger Pau Monne
2024-06-11 12:45 ` Jan Beulich
2024-06-12 8:47 ` Roger Pau Monné
2024-06-12 9:04 ` Jan Beulich
2024-06-12 10:41 ` Roger Pau Monné
2024-06-11 13:47 ` Jan Beulich
2024-06-12 8:36 ` Roger Pau Monné
2024-06-10 14:20 ` [PATCH v2 6/7] x86/irq: handle moving interrupts in _assign_irq_vector() Roger Pau Monne
2024-06-11 13:18 ` Jan Beulich
2024-06-12 10:39 ` Roger Pau Monné
2024-06-12 13:42 ` Jan Beulich
2024-06-12 15:36 ` Roger Pau Monné
2024-06-13 8:38 ` Jan Beulich
2024-06-13 11:31 ` Roger Pau Monné
2024-06-13 11:36 ` Jan Beulich
2024-06-13 12:55 ` Roger Pau Monné
2024-06-13 13:07 ` Jan Beulich
2024-06-10 14:20 ` [PATCH v2 7/7] x86/irq: forward pending interrupts to new destination in fixup_irqs() Roger Pau Monne
2024-06-11 13:50 ` Jan Beulich
2024-06-12 11:23 ` Roger Pau Monné
2024-06-12 13:47 ` Jan Beulich
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=ZmlX_cxqJLerZKee@macbook \
--to=roger.pau@citrix.com \
--cc=andrew.cooper3@citrix.com \
--cc=jbeulich@suse.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.