From: Janosch Frank <frankja@linux.ibm.com>
To: Steffen Eiden <seiden@linux.ibm.com>,
Christian Borntraeger <borntraeger@linux.ibm.com>,
Claudio Imbrenda <imbrenda@linux.ibm.com>,
David Hildenbrand <david@kernel.org>,
Heiko Carstens <hca@linux.ibm.com>,
Vasily Gorbik <gor@linux.ibm.com>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Sven Schnelle <svens@linux.ibm.com>,
Sean Christopherson <seanjc@google.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Thomas Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>,
Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
Matthew Rosato <mjrosato@linux.ibm.com>,
Farhan Ali <alifm@linux.ibm.com>,
Eric Farman <farman@linux.ibm.com>,
Tony Krowiak <akrowiak@linux.ibm.com>,
Halil Pasic <pasic@linux.ibm.com>,
Jason Herne <jjherne@linux.ibm.com>,
Harald Freudenberger <freude@linux.ibm.com>,
Holger Dengler <dengler@linux.ibm.com>,
Alex Williamson <alex@shazbot.org>
Cc: kvm@vger.kernel.org, linux-s390@vger.kernel.org,
linux-kernel@vger.kernel.org, Jason Gunthorpe <jgg@ziepe.ca>
Subject: Re: [PATCH v4 0/6] KVM/vfio: Use file-based reference counting for KVM
Date: Tue, 29 Sep 2026 15:05:41 +0200 [thread overview]
Message-ID: <0be2ddbb-e382-4d78-b77d-3b448668575d@linux.ibm.com> (raw)
In-Reply-To: <20260928-vfio-v4-0-e32e226d5932@linux.ibm.com>
On 9/28/26 3:07 PM, Steffen Eiden wrote:
> This series switches the KVM-VFIO interface and external consumers over to
> standard file-based reference counting, eliminating all external KVM symbol
> exports.
>
> This is a spin-off for the arm on s390 series (old version: [1]) to
> address all the relevant persons w/o polluting their mailbox. The
> arm-on-s390 series now dropped those patches and depends on this series
> (for beeing able to link with KVM=y)
>
> Currently, VFIO integrates with KVM by looking up kvm_get_kvm_safe() and
> kvm_put_kvm() dynamically using symbol_get(), manually tracking module
> reference counts and storing a put_kvm function pointer in struct
> vfio_device.
>
> In the ARM64-on-s390 architecture, a second concurrent KVM module
> (kvm-arm64) is introduced alongside native KVM to host hardware-accelerated
> ARM64 guests. Having exported global symbols (like kvm_get_kvm/kvm_put_kvm)
> creates symbol conflicts and prevents clean coexistence of two KVM modules.
>
> Additionally, the file based counting simplifies the code and reuses
> the existing fs refcounting.
>
> Instead of passing raw KVM pointers and managing module symbols manually, the
> interface now passes the underlying VM file descriptor throughout VFIO and
> associated architecture subsystems. To safely extract the KVM instance from a
> file, an architecture-namespaced helper mechanism is introduced that verifies
> the file belongs to the expected KVM implementation before accessing its
> internal state. A back-pointer from the KVM instance to its associated file is
> maintained across its lifecycle so subsystems can safely acquire file
> references on demand. Finally, with VFIO, architecture page tracking, and
> device hooks converted to use file references, the remaining KVM reference-
> counting exports are restricted strictly to internal KVM modules.
>
> Steffen
Series
Acked-by: Janosch Frank <frankja@linux.ibm.com>
next prev parent reply other threads:[~2026-09-29 13:06 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-28 13:07 [PATCH v4 0/6] KVM/vfio: Use file-based reference counting for KVM Steffen Eiden
2026-09-28 13:07 ` [PATCH v4 1/6] KVM: Introduce file_to_kvm_<arch>() infrastructure Steffen Eiden
2026-09-28 13:14 ` sashiko-bot
2026-09-28 13:07 ` [PATCH v4 2/6] KVM: Add file back-pointer to struct kvm Steffen Eiden
2026-09-28 13:18 ` sashiko-bot
2026-09-28 13:07 ` [PATCH v4 3/6] KVM: x86: Use file_to_kvm_x86() in SEV Steffen Eiden
2026-09-28 13:13 ` sashiko-bot
2026-09-28 13:07 ` [PATCH v4 4/6] KVM/vfio: Use file-based reference counting for KVM Steffen Eiden
2026-09-28 13:22 ` sashiko-bot
2026-09-29 17:59 ` Claudio Imbrenda
2026-09-30 7:35 ` Steffen Eiden
2026-10-01 17:39 ` Alex Williamson
2026-09-28 13:07 ` [PATCH v4 5/6] KVM: Restrict kvm_get_kvm/kvm_put_kvm export to internal KVM modules Steffen Eiden
2026-09-28 13:12 ` sashiko-bot
2026-09-28 13:07 ` [PATCH v4 6/6] KVM: Remove unused file_is_kvm Steffen Eiden
2026-09-28 13:11 ` sashiko-bot
2026-09-28 19:26 ` [PATCH v4 0/6] KVM/vfio: Use file-based reference counting for KVM Sean Christopherson
2026-09-29 13:05 ` Janosch Frank [this message]
2026-09-30 7:45 ` Claudio Imbrenda
2026-10-01 11:59 ` Christian Borntraeger
2026-10-01 17:46 ` Alex Williamson
2026-10-02 8:48 ` Christian Borntraeger
2026-10-07 12:31 ` Christian Borntraeger
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=0be2ddbb-e382-4d78-b77d-3b448668575d@linux.ibm.com \
--to=frankja@linux.ibm.com \
--cc=agordeev@linux.ibm.com \
--cc=akrowiak@linux.ibm.com \
--cc=alex@shazbot.org \
--cc=alifm@linux.ibm.com \
--cc=borntraeger@linux.ibm.com \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=david@kernel.org \
--cc=dengler@linux.ibm.com \
--cc=farman@linux.ibm.com \
--cc=freude@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=hpa@zytor.com \
--cc=imbrenda@linux.ibm.com \
--cc=jgg@ziepe.ca \
--cc=jjherne@linux.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=mjrosato@linux.ibm.com \
--cc=pasic@linux.ibm.com \
--cc=pbonzini@redhat.com \
--cc=seanjc@google.com \
--cc=seiden@linux.ibm.com \
--cc=svens@linux.ibm.com \
--cc=tglx@kernel.org \
--cc=x86@kernel.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.