On Mon, Jun 01, 2020 at 08:07:31PM +0800, Ying Fang wrote:
> 
> 
> On 2020/6/1 16:07, Andrew Jones wrote:
> > On Sat, May 30, 2020 at 04:56:26PM +0800, Ying Fang wrote:
> > > About the kvm-no-adjvtime CPU property
> > > 
> > > Hi Andrew,
> > > To adjust virutal time, a new kvm cpu property kvm-no-adjvtime
> > > was introduced to 5.0 virt machine types. However the cpu
> > > property was enabled only for host-passthrough and max cpu model.
> > > As for other cpu model like cortex-a57, cortex-a53, cortex-a72,
> > > this kvm-adjvtime is not enabled by default, which means the
> > > virutal time can not be adjust for them.
> > > 
> > > Here, for example, if VM is configured with kvm enabled:
> > > 
> > >    <cpu mode='custom' match='exact' check='partial'>
> > >      <model fallback='allow'>cortex-a72</model>
> > >      <topology sockets='2' dies='1' cores='2' threads='1'/>
> > >      <numa>
> > >        <cell id='0' cpus='0-1' memory='16777216' unit='KiB'/>
> > >        <cell id='1' cpus='2-3' memory='16777216' unit='KiB'/>
> > >      </numa>
> > >    </cpu>
> > > 
> > > We cannot adjust virtual time even if 5.0 virt machine is used.
> > > So i'd like to add it to other cpu model, do you have any
> > > suggestions here ?
> > > 
> > > 
> > 
> > Hi Fang,
> > 
> > The cpu feature only requires kvm.  If a cpu model may be used with kvm,
> > then the feature can be allowed to be used with the model.  What I find
> > interesting is that the cpu model is being used with kvm instead of 'host'
> > or 'max'.  Can you explain the reasons for that?  Currently, when using
> yes,the cpu model is indeed used with kvm.
> 
> There is a situation where the host cpu model is Cortex-A72 and
> a 'custom' cpu mode is used to keep insrtuction set compatible between
> the source and destination host machine when doing live migration.
> So the host physical machine cpu model is Cortex-A72 but
> host-passthrough model is mode used here.

Are the source and destinations hosts used in the migration identical?
If so, then the guest can use cpu 'host' and disable cpu features that
should not be exposed (e.g. -cpu host,pmu=off).  If the source and
destination hosts are not identical, then I'm curious what those exact
differences are.  With the way AArch64 KVM works today, even using the
Cortex-A72 cpu model should require identical hosts when migrating.  Or,
at least both hosts must be compatible with Cortex-A72 and any difference
in ID registers must be somehow getting hidden from the guest.

Thanks,
drew


Reply via email to