virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: Gleb Natapov <gleb@kernel.org>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Mathew John <mathewj@microsoft.com>,
	Theodore Ts'o <tytso@mit.edu>,
	David Hepkin <davidhep@microsoft.com>,
	kvm list <kvm@vger.kernel.org>,
	Niels Ferguson <niels@microsoft.com>,
	Linux Virtualization <virtualization@lists.linux-foundation.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Jake Oshins <jakeo@microsoft.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	John Starks <John.Starks@microsoft.com>
Subject: Re: Standardizing an MSR or other hypercall to get an RNG seed?
Date: Fri, 19 Sep 2014 19:37:50 +0300	[thread overview]
Message-ID: <20140919163749.GI26540@minantech.com> (raw)
In-Reply-To: <CALCETrUgcJt7p_aS0njtHmvPQ=XxNdonFHtPzFgVNpAE4U=R3Q@mail.gmail.com>

On Thu, Sep 18, 2014 at 03:00:05PM -0700, Andy Lutomirski wrote:
> On Thu, Sep 18, 2014 at 2:46 PM, David Hepkin <davidhep@microsoft.com> wrote:
> > I suggest we come to consensus on a specific CPUID leaf where an OS needs to look to determine if a hypervisor supports this capability.  We could define a new CPUID leaf range at a well-defined location, or we could just use one of the existing CPUID leaf ranges implemented by an existing hypervisor.  I'm not familiar with the KVM CPUID leaf range, but in the case of Hyper-V, the Hyper-V CPUID leaf range was architected to allow for other hypervisors to implement it and just show through specific capabilities supported by the hypervisor.  So, we could define a bit in the Hyper-V CPUID leaf range (since Xen and KVM also implement this range), but that would require Linux to look in that range on boot to discover this capability.
> 
> I also don't know whether QEMU and KVM would be okay with implementing
> the host side of the Hyper-V mechanism by default.  They would have to
> implement at least leaves 0x40000001 and 0x4000002, plus correctly
> reporting zeros through whatever leaf is used for this new feature.
> Gleb?  Paolo?
> 
KVM and any other hypervisor out there already implement capability
detection mechanism in 0x40000000 range, and of course all of them do
it differently. Linux detects what hypervior it runs on very early and
switch to correspondent code to handle each hypervisor. Quite frankly
I do not see what problem you are trying to fix with standardizing MSR
to get RND and detection mechanism for this MSR. RND MSR is in no way
unique here. There are other mechanisms that are virtually identical
between hypervisors but have different gust/hypervisor interfaces and
are detected differently on different hypervisors. Examples are pvclock,
pveoi may be others.

--
			Gleb.

  parent reply	other threads:[~2014-09-19 16:37 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-18  2:50 Standardizing an MSR or other hypercall to get an RNG seed? Andy Lutomirski
2014-09-18 14:40 ` KY Srinivasan
     [not found] ` <2aa00301e9af4826b5781e01709f81e7@BY2PR0301MB0711.namprd03.prod.outlook.com>
2014-09-18 14:43   ` H. Peter Anvin
2014-09-18 15:38     ` Andy Lutomirski
2014-09-18 15:44       ` Andy Lutomirski
2014-09-18 15:58         ` Paolo Bonzini
2014-09-18 16:36       ` KY Srinivasan
     [not found]       ` <5b9c7dcde3824e49a25f3ee00844b868@BY2PR0301MB0711.namprd03.prod.outlook.com>
2014-09-18 17:13         ` Nakajima, Jun
2014-09-18 17:17           ` Paolo Bonzini
     [not found]           ` <541B13B8.1020006@redhat.com>
2014-09-18 17:20             ` Jake Oshins
2014-09-18 17:20             ` KY Srinivasan
     [not found]             ` <b697ef83ae594d8fb34347339dd52dfa@BY2PR0301MB0711.namprd03.prod.outlook.com>
2014-09-18 17:42               ` Nakajima, Jun
2014-09-18 18:35                 ` Andy Lutomirski
2014-09-18 18:39                   ` H. Peter Anvin
2014-09-18 18:54                     ` Niels Ferguson
2014-09-18 19:03                       ` Andy Lutomirski
2014-09-18 21:54                         ` David Hepkin
     [not found]                         ` <572ba53a2e1e4278823f718a421e2c1d@BY2PR03MB585.namprd03.prod.outlook.com>
2014-09-19  6:04                           ` Paolo Bonzini
2014-09-18 18:58                   ` Paolo Bonzini
2014-09-18 19:07                     ` Andy Lutomirski
2014-09-18 21:21                       ` Nakajima, Jun
2014-09-18 21:35                         ` Andy Lutomirski
2014-09-18 21:46                       ` David Hepkin
     [not found]                       ` <0180a8dfcad746a895755c4374853c16@BY2PR03MB585.namprd03.prod.outlook.com>
2014-09-18 21:57                         ` H. Peter Anvin
2014-09-18 22:07                           ` Andy Lutomirski
2014-09-19  0:49                             ` Nakajima, Jun
     [not found]                             ` <CAL54oT1Q8kABge=t4s5REVWWakboON-6vfszMRkVz=ks_3vRoA@mail.gmail.com>
2014-09-19  1:03                               ` Andy Lutomirski
2014-09-19  1:28                                 ` Andy Lutomirski
     [not found]                                 ` <CALCETrWZ1cF23aT82yGfTKS48d2G+_Od7hEkAzDWzDhqpHNVqA@mail.gmail.com>
2014-09-19 16:14                                   ` Nakajima, Jun
2014-09-19 16:22                                     ` Paolo Bonzini
2014-09-19 16:40                                     ` H. Peter Anvin
2014-09-19 17:21                                       ` Andy Lutomirski
2014-09-19 17:36                                         ` H. Peter Anvin
2014-09-19 17:39                                           ` Andy Lutomirski
2014-09-19 22:05                                       ` Theodore Ts'o
2014-09-19 22:06                                         ` Andy Lutomirski
2014-09-19 22:57                                           ` Nakajima, Jun
2014-09-19 22:57                                           ` Theodore Ts'o
2014-09-19 23:12                                             ` Andy Lutomirski
2014-09-19 23:29                                               ` H. Peter Anvin
2014-09-19 23:35                                                 ` Theodore Ts'o
2014-09-19 23:41                                                   ` Andy Lutomirski
2014-09-20  0:06                                                   ` H. Peter Anvin
2014-09-19 23:29                                               ` H. Peter Anvin
2014-09-18 22:00                         ` Andy Lutomirski
2014-09-18 22:03                           ` H. Peter Anvin
2014-09-19 16:37                           ` Gleb Natapov [this message]
2014-09-19 16:40                             ` H. Peter Anvin
2014-09-19 16:53                               ` Gleb Natapov
2014-09-19 17:08                                 ` H. Peter Anvin
2014-09-19 17:15                                   ` Gleb Natapov
2014-09-19 17:18                                     ` H. Peter Anvin
2014-09-19 17:49                                       ` Gleb Natapov
2014-09-19 18:02                                         ` Andy Lutomirski
2014-09-19 18:12                                           ` Gleb Natapov
2014-09-19 18:20                                             ` Andy Lutomirski
2014-09-19 20:53                                               ` Gleb Natapov
2014-09-22  4:11                                               ` Alok Kataria
2014-09-19 17:18                                     ` H. Peter Anvin
2014-09-19 17:21                                 ` Andy Lutomirski
2014-09-19 17:59                                   ` Gleb Natapov
2014-09-18 18:56                 ` Paolo Bonzini
2014-09-19 18:30 ` Christopher Covington
2014-09-19 18:42   ` Andy Lutomirski
2014-09-19 20:21     ` Nadav Amit
     [not found]     ` <15C8041A-3488-4693-B329-3A9FE77A0CB9@gmail.com>
2014-09-19 20:46       ` Andy Lutomirski
2014-09-19 21:46         ` H. Peter Anvin
2014-09-22 13:31           ` Christopher Covington
2014-09-22 14:17             ` H. Peter Anvin
2014-09-22 14:18               ` H. Peter Anvin
2014-09-22 23:01             ` H. Peter Anvin
2014-09-21 12:39         ` Paolo Bonzini
2014-09-22 13:33     ` Christopher Covington

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=20140919163749.GI26540@minantech.com \
    --to=gleb@kernel.org \
    --cc=John.Starks@microsoft.com \
    --cc=davidhep@microsoft.com \
    --cc=hpa@zytor.com \
    --cc=jakeo@microsoft.com \
    --cc=kvm@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=mathewj@microsoft.com \
    --cc=niels@microsoft.com \
    --cc=pbonzini@redhat.com \
    --cc=tytso@mit.edu \
    --cc=virtualization@lists.linux-foundation.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 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).