From: James Sullivan <sullivan.james.f@gmail.com>
To: qemu-devel@nongnu.org
Cc: pbonzini@redhat.com, James Sullivan <sullivan.james.f@gmail.com>,
mst@redhat.com
Subject: [Qemu-devel] [PATCH 0/3] apic: Implement handling for MSI redirection hint in IRQ delivery
Date: Mon, 23 Mar 2015 17:21:20 -0600 [thread overview]
Message-ID: <1427152883-7049-1-git-send-email-sullivan.james.f@gmail.com> (raw)
This set of patches implements handling for the MSI redirection hint
bit. The RH bit is used in logical destination mode to indicate that
the delivery of the interrupt shall only be to the lowest priority
candidate LAPIC.
Currently, there is no handling of the MSI RH bit. This patch implements
the following logic:
* DM=0, RH=* : Physical destination mode. Interrupt is delivered to
the LAPIC with the matching APIC ID. (Subject to
the usual restrictions, i.e. no broadcast dest)
* DM=1, RH=0 : Logical destination mode without redirection. Interrupt
is delivered to all LAPICs in the logical group
specified by the IRQ's destination map and delivery
mode.
* DM=1, RH=1 : Logical destination mode with redirection. Interrupt
is delivered only to the lowest priority LAPIC in the
logical group specified by the dest map and the
delivery mode. Delivery semantics are otherwise
specified by the delivery_mode of the IRQ, which
is unchanged.
These changes reflect those made in the KVM in
http://www.spinics.net/lists/kvm/msg114915.html ("kvm: x86: Implement
handling of RH=1 for MSI delivery in KVM"), which are under review but
are largely settled in terms of functionality.
James Sullivan (3):
apic: Added helper function apic_match_dest,
apic_match_[physical,logical]_dest
apic: Set and pass in RH bit for MSI interrupts
apic: Implement handling of RH=1 for MSI interrupt delivery
hw/intc/apic.c | 70 +++++++++++++++++++++++++++++++++++++-------------
hw/intc/ioapic.c | 2 +-
include/hw/i386/apic.h | 3 ++-
trace-events | 2 +-
4 files changed, 56 insertions(+), 21 deletions(-)
--
2.3.3
next reply other threads:[~2015-03-23 23:24 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-23 23:21 James Sullivan [this message]
2015-03-23 23:21 ` [Qemu-devel] [PATCH 1/3] apic: Added helper function apic_match_dest, apic_match_[physical, logical]_dest James Sullivan
2015-03-23 23:21 ` [Qemu-devel] [PATCH 2/3] apic: Set and pass in RH bit for MSI interrupts James Sullivan
2015-03-23 23:21 ` [Qemu-devel] [PATCH 3/3] apic: Implement handling of RH=1 for MSI interrupt delivery James Sullivan
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=1427152883-7049-1-git-send-email-sullivan.james.f@gmail.com \
--to=sullivan.james.f@gmail.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).