public inbox for kvmarm@lists.cs.columbia.edu
 help / color / mirror / Atom feed
From: Russell King - ARM Linux <linux@armlinux.org.uk>
To: Christoffer Dall <christoffer.dall@linaro.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>,
	dave.martin@arm.com, linux-arm-kernel@lists.infradead.org,
	kvmarm@lists.cs.columbia.edu
Subject: Re: [PATCH 1/2] ARM: hyp-stub: improve ABI
Date: Mon, 9 Jan 2017 12:26:39 +0000	[thread overview]
Message-ID: <20170109122639.GX14217@n2100.armlinux.org.uk> (raw)
In-Reply-To: <20170103095149.GA14242@cbox>

On Tue, Jan 03, 2017 at 10:51:49AM +0100, Christoffer Dall wrote:
> Hi Russell,
> 
> On Thu, Dec 15, 2016 at 06:57:18PM +0000, Russell King - ARM Linux wrote:
> > What's also coming clear is that there's very few people who understand
> > all the interactions here, and the whole thing seems to be an undocumented
> > mess.  
> 
> I think the hyp stub has just served a very limited purpose so far, and
> therefore is a somewhat immature implementation.  Now we've discovered a
> need to clean it up, and we're all for that.  Again, I don't think the
> problem is any larger than that, we just need to fix it, and it seems to
> me everyone is willing to work on that.

What I want to see is some documentation of the hyp-stub, so that there
can be some element of confidence that changes there are properly
coordinated.  As I said in a follow up email:

| Either we need more people to have an understanding (so if one of them
| gets run over by a bus, we're not left floundering around) or we need
| it to be documented - even if it's just a simple comment "the ABI in
| this file is shared with XYZ, if you change the ABI here, also update
| XYZ too."

> Marc even offered to work on your suggestion to support the general
> hyp ABI commands in KVM.

... which is pointless, because it's a duplication of the effort I've
already put in.  My patches already do the:

#define HVC_GET_VECTORS 0
#define HVC_SET_VECTORS 1
#define HVC_SOFT_RESTART 2

thing which ARM64 does, passing the arguments in via the appropriate
registers.  However, such a change is a major revision of hyp-stub's
ABI, which completely changes the way it works.

The issue here is that there seems to be only one person, Marc, who
understands that the KVM hypervisor also needs to be updated - everyone
else I've talked to was of the opinion that hyp-stub's ABI is limited
to hyp-stub.S.  That's worse than "I don't know" because it leads to
exactly the situation that my patches created: the two ABIs going out
of step.

What I'm asking for is a patch to add some sort of documentation ASAP
which ensures that this important non-obvious information isn't limited
to just one person.  As I mentioned in the quote above, it can be as
simple as merely pointing each file at its counterparts which have to
be updated at the same time.

Longer term, I'd like to see the existing hypervisor documentation in
Documentation/virtual/kvm/hypercalls.txt updated with the ARM details.
According to that document, KVM effectively only exists on PPC and x86
at the present time...

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

  reply	other threads:[~2017-01-09 12:25 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E1cFRAn-0003ob-HH@rmk-PC.armlinux.org.uk>
2016-12-13 10:54 ` [PATCH] ARM: soft-reboot into same mode that we entered the kernel Mark Rutland
2016-12-13 11:11   ` Russell King - ARM Linux
2016-12-13 11:30     ` Mark Rutland
2016-12-14 10:46       ` [PATCH 1/2] ARM: hyp-stub: improve ABI Russell King
2016-12-14 11:49         ` Mark Rutland
2016-12-15 11:18         ` Marc Zyngier
2016-12-15 11:35           ` Russell King - ARM Linux
2016-12-15 11:46             ` Marc Zyngier
2016-12-15 15:15               ` Russell King - ARM Linux
2016-12-15 15:37                 ` Marc Zyngier
2016-12-15 18:57                   ` Russell King - ARM Linux
2016-12-17 12:07                     ` Catalin Marinas
2017-01-02 12:12                       ` Russell King - ARM Linux
2017-01-03  9:51                     ` Christoffer Dall
2017-01-09 12:26                       ` Russell King - ARM Linux [this message]
2017-01-09 13:26                         ` Christoffer Dall
2017-01-09 14:05                           ` Russell King - ARM Linux
2017-01-09 14:10                             ` Russell King - ARM Linux
2017-01-09 14:42                             ` Russell King - ARM Linux
2017-01-09 14:57                               ` Christoffer Dall
2017-01-09 15:01                             ` Christoffer Dall
2017-01-09 15:43                               ` Russell King - ARM Linux
2017-01-09 12:54           ` Russell King - ARM Linux
2017-01-09 13:14             ` Marc Zyngier
2017-01-09 13:20               ` Russell King - ARM Linux
2017-01-09 13:31                 ` Marc Zyngier
2017-01-09 14:28             ` Catalin Marinas
2016-12-14 10:46       ` [PATCH 2/2] ARM: soft-reboot into same mode that we entered the kernel Russell King
2016-12-14 11:56         ` Mark Rutland
2016-12-14 12:05           ` Russell King - ARM Linux
2016-12-14 12:17             ` Mark Rutland
2016-12-14 12:29               ` Russell King - ARM Linux
2016-12-14 12:40                 ` Mark Rutland
2016-12-14 12:46                   ` Russell King - ARM Linux
2016-12-14 13:42             ` Marc Zyngier

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=20170109122639.GX14217@n2100.armlinux.org.uk \
    --to=linux@armlinux.org.uk \
    --cc=christoffer.dall@linaro.org \
    --cc=dave.martin@arm.com \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=marc.zyngier@arm.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