From: Oliver Upton <oliver.upton@linux.dev>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Miguel Luis <miguel.luis@oracle.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Jonathan Corbet <corbet@lwn.net>, Marc Zyngier <maz@kernel.org>,
James Morse <james.morse@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Zenghui Yu <yuzenghui@huawei.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Lorenzo Pieralisi <lpieralisi@kernel.org>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Pavel Machek <pavel@ucw.cz>, Len Brown <len.brown@intel.com>,
Shuah Khan <shuah@kernel.org>,
David Woodhouse <dwmw@amazon.co.uk>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"kvmarm@lists.linux.dev" <kvmarm@lists.linux.dev>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
"linux-kselftest@vger.kernel.org"
<linux-kselftest@vger.kernel.org>,
Francesco Lavra <francescolavra.fl@gmail.com>
Subject: Re: [PATCH v6 6/6] arm64: Use SYSTEM_OFF2 PSCI call to power off for hibernate
Date: Fri, 25 Oct 2024 13:40:24 -0700 [thread overview]
Message-ID: <ZxwCOHd-DbUT8dsT@linux.dev> (raw)
In-Reply-To: <627769A8-AF84-47A1-B4F9-5F44C75A8058@infradead.org>
On Fri, Oct 25, 2024 at 08:13:03AM +0200, David Woodhouse wrote:
> On 24 October 2024 21:57:38 CEST, Oliver Upton <oliver.upton@linux.dev> wrote:
> >On Thu, Oct 24, 2024 at 05:56:09PM +0200, David Woodhouse wrote:
> >> On 24 October 2024 17:44:49 CEST, Oliver Upton <oliver.upton@linux.dev> wrote:
> >> >IIUC, you're really wanting to 0x0 because there are hypervisors out
> >> >there that violate the final spec and *only* accept this value.
> >> >
> >> >That's perfectly fine, but it'd help avoid confusion if the supporting
> >> >comment was a bit more direct:
> >> >
> >> > /*
> >> > * If no hibernate type is specified SYSTEM_OFF2 defaults to
> >> > * selecting HIBERNATE_OFF.
> >> > *
> >> > * There are hypervisors in the wild that violate the spec and
> >> > * reject calls that explicitly provide a hibernate type. For
> >> > * compatibility with these nonstandard implementations, pass 0
> >> > * as the type.
> >> > */
> >> > if (system_entering_hibernation())
> >> > invoke_psci_fn(PSCI_FN_NATIVE(1_3, SYSTEM_OFF2), 0 , 0, 0);
> >>
> >> By the time this makes it into released versions of the guest Linux kernel, that comment won't be true any more.
> >
> >Then does it even matter? What is the problem you're trying to solve
> >with using a particular value for the hibernate type?
> >
> >Either the goal of this is to make the PSCI client code compatible with
> >your hypervisor today (and any other implementation based on 'F ALP1') or
> >we don't care and go with whatever value we want.
> >
> >Even if the comment eventually becomes stale, there is a ton of value in
> >documenting the exact implementation decision being made.
> >
>
> Eventually it won't matter and we can go with whatever value we want. But yes, the goal is to be compatible with the hypervisor *today* until it catches up the changes to the final versions of the spec. I didn't spend much time overthinking the comment. What was it....
>
> /*
> * Zero is an acceptable alternative to PSCI_1_3_OFF_TYPE_HIBERNATE_OFF
> * and is supported by hypervisors implementing an earlier version
> * of the pSCI v1.3 spec.
> */
>
> That seems to cover it just fine, I think.
No. You're leaving the work for the reader to:
(1) Figure out what you're talking about
(2) Go dig up an "earlier version" of the spec
(3) Realise that it means certain hypervisors only take 0x0 as an
argument
If you speak *directly* about the problem you're trying to address then
reviewers are less likely to get hung up on what you're trying to do.
I'm genuinely at a loss for why you would want to present this as an
"acceptable alterantive" rather than a functional requirement for this
driver to run on your hypervisor.
--
Thanks,
Oliver
next prev parent reply other threads:[~2024-10-25 20:42 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-19 17:15 [PATCH v6 0/6] Add PSCI v1.3 SYSTEM_OFF2 support for hibernation David Woodhouse
2024-10-19 17:15 ` [PATCH v6 1/6] firmware/psci: Add definitions for PSCI v1.3 specification David Woodhouse
2024-10-23 15:31 ` Miguel Luis
2024-10-19 17:15 ` [PATCH v6 2/6] KVM: arm64: Add PSCI v1.3 SYSTEM_OFF2 function for hibernation David Woodhouse
2024-10-23 16:02 ` Miguel Luis
2024-10-19 17:15 ` [PATCH v6 3/6] KVM: arm64: Add support for PSCI v1.2 and v1.3 David Woodhouse
2024-10-23 16:21 ` Miguel Luis
2024-10-19 17:15 ` [PATCH v6 4/6] KVM: selftests: Add test for PSCI SYSTEM_OFF2 David Woodhouse
2024-10-19 17:15 ` [PATCH v6 5/6] KVM: arm64: nvhe: Pass through PSCI v1.3 SYSTEM_OFF2 call David Woodhouse
2024-10-24 10:42 ` Miguel Luis
2024-10-19 17:15 ` [PATCH v6 6/6] arm64: Use SYSTEM_OFF2 PSCI call to power off for hibernate David Woodhouse
2024-10-24 12:54 ` Miguel Luis
2024-10-24 13:48 ` David Woodhouse
2024-10-24 15:44 ` Oliver Upton
2024-10-24 15:56 ` David Woodhouse
2024-10-24 19:57 ` Oliver Upton
2024-10-25 6:13 ` David Woodhouse
2024-10-25 20:40 ` Oliver Upton [this message]
2024-10-31 18:00 ` David Woodhouse
2024-10-31 12:16 ` Catalin Marinas
2024-10-31 17:55 ` Lorenzo Pieralisi
2024-11-01 17:48 ` Lorenzo Pieralisi
2024-11-04 13:54 ` Ard Biesheuvel
2024-11-04 15:11 ` Lorenzo Pieralisi
2024-10-25 22:12 ` (subset) [PATCH v6 0/6] Add PSCI v1.3 SYSTEM_OFF2 support for hibernation Oliver Upton
2024-10-31 12:15 ` Catalin Marinas
2024-10-31 17:18 ` David Woodhouse
2024-10-31 17:56 ` Oliver Upton
2024-10-31 18:01 ` David Woodhouse
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=ZxwCOHd-DbUT8dsT@linux.dev \
--to=oliver.upton@linux.dev \
--cc=catalin.marinas@arm.com \
--cc=corbet@lwn.net \
--cc=dwmw2@infradead.org \
--cc=dwmw@amazon.co.uk \
--cc=francescolavra.fl@gmail.com \
--cc=james.morse@arm.com \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=len.brown@intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mark.rutland@arm.com \
--cc=maz@kernel.org \
--cc=miguel.luis@oracle.com \
--cc=pavel@ucw.cz \
--cc=pbonzini@redhat.com \
--cc=rafael@kernel.org \
--cc=shuah@kernel.org \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
--cc=yuzenghui@huawei.com \
/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).