public inbox for kvmarm@lists.cs.columbia.edu
 help / color / mirror / Atom feed
From: Dave Martin <Dave.Martin@arm.com>
To: Andre Przywara <andre.przywara@arm.com>
Cc: Christoffer Dall <cdall@kernel.org>,
	Marc Zyngier <marc.zyngier@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	Kristina Martsenko <kristina.martsenko@arm.com>,
	Zhang Lei <zhang.lei@jp.fujitsu.com>,
	Amit Daniel Kachhap <amit.kachhap@arm.com>,
	kvmarm@lists.cs.columbia.edu,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH kvmtool v3 5/9] KVM: arm/arm64: Add a vcpu feature for pointer authentication
Date: Mon, 3 Jun 2019 12:23:03 +0100	[thread overview]
Message-ID: <20190603112302.GN28398@e103592.cambridge.arm.com> (raw)
In-Reply-To: <20190531180416.3e87f5ad@donnerap.cambridge.arm.com>

On Fri, May 31, 2019 at 06:04:16PM +0100, Andre Przywara wrote:
> On Thu, 30 May 2019 16:13:10 +0100
> Dave Martin <Dave.Martin@arm.com> wrote:
> 
> > From: Amit Daniel Kachhap <amit.kachhap@arm.com>
> > 
> > This patch adds a runtime capabality for KVM tool to enable Arm64 8.3
> > Pointer Authentication in guest kernel. Two vcpu features
> > KVM_ARM_VCPU_PTRAUTH_[ADDRESS/GENERIC] are supplied together to enable
> > Pointer Authentication in KVM guest after checking the capability.
> > 
> > Command line options --enable-ptrauth and --disable-ptrauth are added
> > to use this feature. However, if those options are not provided then
> > also this feature is enabled if host supports this capability.
> 
> I don't really get the purpose of two options, I think that's quite
> confusing. Should the first one either be dropped at all or called
> something with "force"?
> 
> I guess the idea is to fail if pointer auth isn't available, but the
> option is supplied?
> 
> Or maybe have one option with parameters?
> --ptrauth[,=enable,=disable]

So, I was following two principles here, either or both of which may be
bogus:

1) There should be a way to determine whether KVM turns a given feature
on or off (instead of magically defaulting to something).

2) To a first approaximation, kvmtool should allow each major KVM ABI
feature to be exercised.

3) By default, kvmtool should offer the maximum feature set possible to
the guest.


(3) is well established, but (1) and (2) may be open to question?

If we hold to both principles, it makes sense to have options
functionally equivalent to what I suggested (where KVM provides the
control in the first place), but there may be more convenient ways
to respell the options.

If we really can't decide, maybe it's better to drop the options
altogether until we have a real use case.

I've found the options very useful for testing and debugging on the SVE
side, but I can't comment on ptrauth.  Maybe someone else has a view?

> > The macros defined in the headers are not in sync and should be replaced
> > from the upstream.
> 
> This is no longer true, I guess?

Ah yes, that comment can go.

Cheers
---Dave
_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

  reply	other threads:[~2019-06-03 11:23 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-30 15:13 [PATCH kvmtool v3 0/9] arm64: Pointer Authentication and SVE support Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 1/9] update_headers.sh: Add missing shell quoting Dave Martin
2019-05-31 17:02   ` Andre Przywara
2019-06-03 10:40     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 2/9] update_headers.sh: Cleanly report failure on error Dave Martin
2019-05-31 17:03   ` Andre Przywara
2019-06-03 10:41     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 3/9] update_headers.sh: arm64: Copy sve_context.h if available Dave Martin
2019-05-31 17:03   ` Andre Przywara
2019-06-03 11:08     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 4/9] update_headers: Sync kvm UAPI headers with linux v5.1-rc1 Dave Martin
2019-05-31 17:03   ` Andre Przywara
2019-06-03 11:10     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 5/9] KVM: arm/arm64: Add a vcpu feature for pointer authentication Dave Martin
2019-05-31 17:04   ` Andre Przywara
2019-06-03 11:23     ` Dave Martin [this message]
2019-06-03 14:03       ` Andre Przywara
2019-06-03 14:18         ` Dave Martin
2019-06-03 14:07       ` Will Deacon
2019-06-03 14:17         ` Dave Martin
2019-06-03 13:48   ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 6/9] arm/arm64: Factor out ptrauth vcpu feature setup Dave Martin
2019-05-31 17:04   ` Andre Przywara
2019-06-03 11:12     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 7/9] arm64: Make ptrauth enable/disable diagnostics more user-friendly Dave Martin
2019-05-31 17:05   ` Andre Przywara
2019-06-03 11:14     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 8/9] arm64: Add SVE support Dave Martin
2019-05-31 17:13   ` Andre Przywara
2019-06-03 11:15     ` Dave Martin
2019-05-30 15:13 ` [PATCH kvmtool v3 9/9] arm64: Select SVE vector lengths via the command line Dave Martin

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=20190603112302.GN28398@e103592.cambridge.arm.com \
    --to=dave.martin@arm.com \
    --cc=amit.kachhap@arm.com \
    --cc=andre.przywara@arm.com \
    --cc=cdall@kernel.org \
    --cc=kristina.martsenko@arm.com \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=marc.zyngier@arm.com \
    --cc=will.deacon@arm.com \
    --cc=zhang.lei@jp.fujitsu.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