From: Song Gao <gaosong@loongson.cn>
To: maobibo@loongson.cn, chenhuacai@kernel.org
Cc: kvm@vger.kernel.org, loongarch@lists.linux.dev,
kernel@xen0n.name, linux-kernel@vger.kernel.org,
lixianglai@loongson.cn
Subject: [PATCH v9 0/2] LoongArch: KVM: Add DMSINTC support irqchip in kernel
Date: Thu, 2 Apr 2026 20:42:35 +0800 [thread overview]
Message-ID: <20260402124237.4174550-1-gaosong@loongson.cn> (raw)
Hi,
This series implements the DMSINTC in-kernel irqchip device,
enables irqfd to deliver MSI to DMSINTC, and supports injecting MSI interrupts
to the target vCPU.
applied this series. use netperf test.
VM with one CPU and start netserver, host run netperf.
disable dmsintc
taskset 0x2f netperf -H 192.168.122.204 -t UDP_RR -l 36000
Local /Remote
Socket Size Request Resp. Elapsed Trans.
Send Recv Size Size Time Rate
bytes Bytes bytes bytes secs. per sec
212992 212992 1 1 36000.00 27107.36
enable dmsintc
Local /Remote
Socket Size Request Resp. Elapsed Trans.
Send Recv Size Size Time Rate
bytes Bytes bytes bytes secs. per sec
212992 212992 1 1 36000.00 28831.14 (+6.3%)
v9:
*Correct the incorrect parameter type and remove the function prefix;
*Fix a boundary value check.
v8:
*Move dmsintc_inject_irq(),dmsintc_deliver_msi_to_vcpu()and
dmsintc_set_msi_irq to dmsintc.c.
*Rebase.
v7:
*Rebase;
*Fix a typo error;
*Drop an extra space;
*Move some code from patch2 to patch1.
*Rename loongarch_dmsintc_inject_irq() to dmsintc_inject_irq() and move
it to interrupt.c;
*Rename kvm_loongarch_deliver_msi_to_vcpu() to
dmsintc_deliver_msi_to_vcpu() and move it to irqfd.c;
*Drop loongarch_set_msi() and dispatch the dmsintc/eiointc
paths in pch_msi_set_irq().
v6:
Fix kvm_device leak in kvm_dmsintc_destroy().
v5:
Combine patch2 and patch3
Add check msgint feature when register DMSINT device.
V4: Rebase and R-b;
replace DINTC to DMSINTC.
V3: Fix kvm_arch_set_irq_inatomic() missing dmsintc set msi.(patch3)
V2:
https://patchew.org/linux/20251128091125.2720148-1-gaosong@loongson.cn/
Thanks.
Song Gao
Song Gao (2):
LoongArch: KVM: Add DMSINTC device support
LoongArch: KVM: Add dmsintc inject msi to the dest vcpu
arch/loongarch/include/asm/kvm_dmsintc.h | 23 +++++
arch/loongarch/include/asm/kvm_host.h | 3 +
arch/loongarch/include/asm/kvm_pch_pic.h | 4 +-
arch/loongarch/include/uapi/asm/kvm.h | 4 +
arch/loongarch/kvm/Makefile | 1 +
arch/loongarch/kvm/intc/dmsintc.c | 117 +++++++++++++++++++++++
arch/loongarch/kvm/intc/pch_pic.c | 15 ++-
arch/loongarch/kvm/interrupt.c | 37 +++++++
arch/loongarch/kvm/irqfd.c | 48 ++++++++--
arch/loongarch/kvm/main.c | 6 ++
include/uapi/linux/kvm.h | 2 +
11 files changed, 251 insertions(+), 9 deletions(-)
create mode 100644 arch/loongarch/include/asm/kvm_dmsintc.h
create mode 100644 arch/loongarch/kvm/intc/dmsintc.c
--
2.39.3
next reply other threads:[~2026-04-02 13:08 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-02 12:42 Song Gao [this message]
2026-04-02 12:42 ` [PATCH v9 1/2] LoongArch: KVM: Add DMSINTC device support Song Gao
2026-04-02 12:42 ` [PATCH v9 2/2] LoongArch: KVM: Add dmsintc inject msi to the dest vcpu Song Gao
2026-04-07 12:34 ` [PATCH v9 0/2] LoongArch: KVM: Add DMSINTC support irqchip in kernel Huacai Chen
2026-04-09 1:32 ` gaosong
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=20260402124237.4174550-1-gaosong@loongson.cn \
--to=gaosong@loongson.cn \
--cc=chenhuacai@kernel.org \
--cc=kernel@xen0n.name \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lixianglai@loongson.cn \
--cc=loongarch@lists.linux.dev \
--cc=maobibo@loongson.cn \
/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 read-only IMAP folder(s) and NNTP newsgroup(s).