Hi Marc, > -----Original Message----- > From: Marc Zyngier <maz@xxxxxxxxxx> > Sent: Monday, January 13, 2020 7:16 PM > To: Jianyong Wu <Jianyong.Wu@xxxxxxx> > Cc: netdev@xxxxxxxxxxxxxxx; yangbo.lu@xxxxxxx; john.stultz@xxxxxxxxxx; > tglx@xxxxxxxxxxxxx; pbonzini@xxxxxxxxxx; sean.j.christopherson@xxxxxxxxx; > richardcochran@xxxxxxxxx; Mark Rutland <Mark.Rutland@xxxxxxx>; > will@xxxxxxxxxx; Suzuki Poulose <Suzuki.Poulose@xxxxxxx>; Steven Price > <Steven.Price@xxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx; linux-arm- > kernel@xxxxxxxxxxxxxxxxxxx; kvmarm@xxxxxxxxxxxxxxxxxxxxx; > kvm@xxxxxxxxxxxxxxx; Steve Capper <Steve.Capper@xxxxxxx>; Kaly Xin > <Kaly.Xin@xxxxxxx>; Justin He <Justin.He@xxxxxxx>; nd <nd@xxxxxxx> > Subject: Re: [RFC PATCH v9 6/8] psci: Add hvc call service for ptp_kvm. > > Hi Jianyong, > > On 2020-01-13 10:30, Jianyong Wu wrote: > > Hi Marc, > > > >> -----Original Message----- > >> From: Marc Zyngier <maz@xxxxxxxxxx> > >> Sent: Friday, January 10, 2020 6:56 PM NV breaks that assumtion, > >> because the guest hypervisor is using the physical counter. Also, > >> let's not forget that the hypercall isn't Linux specific. > >> I can write my own non-Linux guest and still use this hypercall. > >> Nothing in > >> there says that I can't use the physical counter if I want to. > >> > >> So somehow, you need to convey the the hypervisor the notion of > >> *which* > >> counter the guest uses. > >> > >> Does it make sense? Or am I missing something? > >> > > I know what you say. Let me try to solve this problem. > > Step 0, summary out all the conditions we should process, which will > > sever as branch condition.(now only normal virt and nested virt, I > > think) > > No. You shouldn't think of the various use cases, but of which time > references a guest can use. You don't need nested virt to use the physical > counter, for example. Ok, > > > Step 1, figure out the set of reference counter value used by guest > > in all condition. > > That should be for the guest to tell you when it calls into the PV service. > Yeah > > Step 2, determine which reference counter value will be used by > guest > > in a certain condition in hypercall. > > In step 1, can we give the set only 2 elements that one is physical > > counter the other is virtual counter? > > I don't think returning the two values is useful. Just return what the guest > asks for. > > > For step 2, I have no idea for that now. can you give me some hint > > about it? > > Just expand your SMC call to take a parameter indicating the reference > counter, and return the sampled (or computed) value corresponding to that > counter. Get it, I'll try it. Thanks Jianyong > > M. > -- > Jazz is not dead. It just smells funny...