From: David Woodhouse <dwmw2@infradead.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
"Landge, Sudan" <sudanl@amazon.co.uk>,
Rob Herring <robh@kernel.org>
Cc: Sudan Landge <sudanl@amazon.com>,
tytso@mit.edu, Jason@zx2c4.com,
krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org,
sathyanarayanan.kuppuswamy@linux.intel.com,
thomas.lendacky@amd.com, dan.j.williams@intel.com,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
graf@amazon.de, bchalios@amazon.es, xmarcalx@amazon.co.uk,
ardb@kernel.org, benh <benh@kernel.crashing.org>
Subject: Re: [PATCH v1 0/4] virt: vmgenid: Add devicetree bindings support
Date: Fri, 22 Mar 2024 08:21:27 +0000 [thread overview]
Message-ID: <ee688cca986d95148a55e32fee48ceed8567f128.camel@infradead.org> (raw)
In-Reply-To: <17611183-f288-47fe-a5e1-91ee16168db0@linaro.org>
[-- Attachment #1: Type: text/plain, Size: 3624 bytes --]
On Fri, 2024-03-22 at 06:40 +0100, Krzysztof Kozlowski wrote:
> On 21/03/2024 18:39, Landge, Sudan wrote:
> >
> >
> > On 21/03/2024 13:32, Rob Herring wrote:
> > > CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.
> > >
> > >
> > >
> > > On Wed, Mar 20, 2024 at 04:55:45PM +0000, David Woodhouse wrote:
> > > > On Wed, 2024-03-20 at 11:15 -0500, Rob Herring wrote:
> > > > > On Wed, Mar 20, 2024 at 01:50:43PM +0000, David Woodhouse wrote:
> > > > > > On Tue, 2024-03-19 at 16:24 +0100, Krzysztof Kozlowski wrote:
> > > > > > > On 19/03/2024 15:32, Sudan Landge wrote:
> > > > > > > > This small series of patches aims to add devicetree bindings support for
> > > > > > > > the Virtual Machine Generation ID (vmgenid) driver.
> > > > > > > >
> > > > > > > > Virtual Machine Generation ID driver was introduced in commit af6b54e2b5ba
> > > > > > > > ("virt: vmgenid: notify RNG of VM fork and supply generation ID") as an
> > > > > > > > ACPI only device.
> > > > > > > > We would like to extend vmgenid to support devicetree bindings because:
> > > > > > > > 1. A device should not be defined as an ACPI or DT only device.
> > > > >
> > > > > This (and the binding patch) tells me nothing about what "Virtual
> > > > > Machine Generation ID driver" is and isn't really justification for
> > > > > "why".
> > > >
> > > > It's a reference to a memory area which the OS can use to tell whether
> > > > it's been snapshotted and restored (or 'forked'). A future submission
> > > > should have a reference to something like
> > > > https://www.qemu.org/docs/master/specs/vmgenid.html or the Microsoft
> > > > doc which is linked from there.
> > >
> > > That doc mentions fw_cfg for which we already have a binding. Why can't
> > > it be used/extended here?
> > QEMU has support for vmgenid but even they do not pass vmgenid directly
> > to the guest kernel using fw_cfg. QEMU passes the vmgenid/UUID via
> > fw_cfg to an intermediate UEFI firmware. This UEFI firmware, running as
> > a guest in QEMU, reads the UUID from fw_cfg and creates ACPI tables for
> > it. The UEFI firmware then passes the UUID information to the guest
> > kernel via ACPI.
> > This approach requires yet another intermediary which is UEFI firmware
> > and adds more complexity than ACPI for minimalist hypervisors that do
> > not have an intermediate bootloader today.
>
> What stops you from passing fw_cfg not to UEFI FW? BTW, no actual VM
> name was used in your posting, but now suddenly it is a talk about QEMU.
That would be possible. But not ideal. Just as exposing it via PCI
would be possible, but not ideal. Or forcing ACPI onto the guests in
question, and various other less efficient options.
If what we're really looking at here is a hostile takeover of the DT
bindings repository, with a blanket "No, DT is dead. Go use something
else, preferably ACPI", than all those other options are possible. We
*never* have to add a new binding to DT ever again. Let's just set the
existing bindings in stone and move on.
But hopefully that isn't the case. DT is the simplest and most
effective way to provide discovery, especially for embedded and microVM
systems. It isn't just a *workaround* for broken hardware which *can't*
do a slower and more complex form of discovery.
And it's absolutely the right thing to do for exposing the equivalent
of the ACPI vmgenid device in a system which isn't afflicted by ACPI
and doesn't *want* to be.
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 5965 bytes --]
next prev parent reply other threads:[~2024-03-22 8:21 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-19 14:32 Sudan Landge
2024-03-19 14:32 ` [PATCH v1 1/4] virt: vmgenid: rearrange code to make review easier Sudan Landge
2024-03-19 14:32 ` [PATCH v1 2/4] virt: vmgenid: change implementation to use a platform driver Sudan Landge
2024-03-19 14:32 ` [PATCH v1 3/4] dt-bindings: Add bindings for vmgenid Sudan Landge
2024-03-19 15:28 ` Krzysztof Kozlowski
[not found] ` <f221da06-2a7c-4db3-a0de-870156865631@amazon.co.uk>
2024-03-20 10:24 ` Krzysztof Kozlowski
2024-03-20 12:16 ` Landge, Sudan
2024-03-19 14:32 ` [PATCH v1 4/4] virt: vmgenid: add support for devicetree bindings Sudan Landge
2024-03-19 15:30 ` Krzysztof Kozlowski
2024-03-20 8:14 ` kernel test robot
2024-03-20 13:35 ` kernel test robot
2024-03-20 16:54 ` kernel test robot
2024-03-21 1:10 ` kernel test robot
2024-03-19 15:24 ` [PATCH v1 0/4] virt: vmgenid: Add devicetree bindings support Krzysztof Kozlowski
2024-03-20 13:50 ` David Woodhouse
2024-03-20 16:15 ` Rob Herring
2024-03-20 16:55 ` David Woodhouse
2024-03-21 13:32 ` Rob Herring
2024-03-21 17:39 ` Landge, Sudan
2024-03-22 5:40 ` Krzysztof Kozlowski
2024-03-22 8:21 ` David Woodhouse [this message]
2024-03-22 13:22 ` Rob Herring
2024-03-22 14:27 ` David Woodhouse
2024-03-22 16:39 ` Landge, Sudan
2024-03-19 15:32 ` Krzysztof Kozlowski
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=ee688cca986d95148a55e32fee48ceed8567f128.camel@infradead.org \
--to=dwmw2@infradead.org \
--cc=Jason@zx2c4.com \
--cc=ardb@kernel.org \
--cc=bchalios@amazon.es \
--cc=benh@kernel.crashing.org \
--cc=conor+dt@kernel.org \
--cc=dan.j.williams@intel.com \
--cc=devicetree@vger.kernel.org \
--cc=graf@amazon.de \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh@kernel.org \
--cc=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=sudanl@amazon.co.uk \
--cc=sudanl@amazon.com \
--cc=thomas.lendacky@amd.com \
--cc=tytso@mit.edu \
--cc=xmarcalx@amazon.co.uk \
/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
all inboxes | Powered by JetHome®