Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1524091

Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen vcpu preempted check

From Pan Xinhui <xinhui@linux.vnet.ibm.com>
Newsgroups linux.kernel
Subject Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen vcpu preempted check
Date 2016-11-17 06:20 +0100
Message-ID <sEnh7-4Jp-1@gated-at.bofh.it> (permalink)
References <syW7T-1Vz-3@gated-at.bofh.it> <syW7U-1Vz-23@gated-at.bofh.it> <sDO9H-6Nu-13@gated-at.bofh.it> <sDZRv-62y-5@gated-at.bofh.it> <sE5Dz-1Aj-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



在 2016/11/16 18:23, Peter Zijlstra 写道:
> On Wed, Nov 16, 2016 at 12:19:09PM +0800, Pan Xinhui wrote:
>> Hi, Peter.
>> 	I think we can avoid a function call in a simpler way. How about below
>>
>> static inline bool vcpu_is_preempted(int cpu)
>> {
>> 	/* only set in pv case*/
>> 	if (pv_lock_ops.vcpu_is_preempted)
>> 		return pv_lock_ops.vcpu_is_preempted(cpu);
>> 	return false;
>> }
>
> That is still more expensive. It needs to do an actual load and makes it
> hard to predict the branch, you'd have to actually wait for the load to
> complete etc.
>
yes, one more load in native case. I think this is acceptable as vcpu_is_preempted is not a critical function.

however if we use pv_callee_save_regs_thunk, more unnecessary registers might be save/resotred in pv case.
that will introduce a little overhead.

but I think I am okay with your idea. I can make another patch based on this patchset with your suggested-by.

thanks
xinhui

> Also, it generates more code.
>
> Paravirt muck should strive to be as cheap as possible when ran on
> native hardware.
>

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen  vcpu preempted check Peter Zijlstra <peterz@infradead.org> - 2016-11-15 16:50 +0100
  Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen  vcpu preempted check Pan Xinhui <xinhui@linux.vnet.ibm.com> - 2016-11-16 05:20 +0100
    Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen  vcpu preempted check Peter Zijlstra <peterz@infradead.org> - 2016-11-16 11:30 +0100
      Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen  vcpu preempted check Christian Borntraeger <borntraeger@de.ibm.com> - 2016-11-16 12:40 +0100
        Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen  vcpu preempted check Peter Zijlstra <peterz@infradead.org> - 2016-11-16 12:50 +0100
      Re: [PATCH v7 06/11] x86, paravirt: Add interface to support kvm/xen  vcpu preempted check Pan Xinhui <xinhui@linux.vnet.ibm.com> - 2016-11-17 06:20 +0100

csiph-web