All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vitaly Kuznetsov <vkuznets@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Jork Loeser <Jork.Loeser@microsoft.com>,
	KY Srinivasan <kys@microsoft.com>,
	Simon Xiao <sixiao@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Stephen Hemminger <sthemmin@microsoft.com>,
	"luto\@kernel.org" <luto@kernel.org>,
	"hpa\@zytor.com" <hpa@zytor.com>,
	"linux-kernel\@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"rostedt\@goodmis.org" <rostedt@goodmis.org>,
	"andy.shevchenko\@gmail.com" <andy.shevchenko@gmail.com>,
	"tglx\@linutronix.de" <tglx@linutronix.de>,
	"mingo\@kernel.org" <mingo@kernel.org>,
	"linux-tip-commits\@vger.kernel.org" 
	<linux-tip-commits@vger.kernel.org>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Subject: Re: [tip:x86/platform] x86/hyper-v: Use hypercall for remote TLB flush
Date: Mon, 14 Aug 2017 15:20:49 +0200	[thread overview]
Message-ID: <87fucup9ou.fsf@vitty.brq.redhat.com> (raw)
In-Reply-To: <20170811162605.tr4tig4av3q4fll6@hirez.programming.kicks-ass.net> (Peter Zijlstra's message of "Fri, 11 Aug 2017 18:26:05 +0200")

Peter Zijlstra <peterz@infradead.org> writes:

> On Fri, Aug 11, 2017 at 09:16:29AM -0700, Linus Torvalds wrote:
>> On Fri, Aug 11, 2017 at 2:03 AM, Peter Zijlstra <peterz@infradead.org> wrote:
>> >
>> > I'm sure we talked about using HAVE_RCU_TABLE_FREE for x86 (and yes that
>> > would make it work again), but this was some years ago and I cannot
>> > readily find those emails.
>> 
>> I think the only time we really talked about HAVE_RCU_TABLE_FREE for
>> x86 (at least that I was cc'd on) was not because of RCU freeing, but
>> because we just wanted to use the generic page table lookup code on
>> x86 *despite* not using RCU freeing.
>> 
>> And we just ended up renaming HAVE_GENERIC_RCU_GUP as HAVE_GENERIC_GUP.
>> 
>> There was only passing mention of maybe making x86 use RCU, but the
>> discussion was really about why the IF flag meant that x86 didn't need
>> to, iirc.
>> 
>> I don't recall us ever discussing *really* making x86 use RCU.
>
> Google finds me this:
>
>   https://lwn.net/Articles/500188/
>
> Which includes:
>
>   http://www.mail-archive.com/kvm@vger.kernel.org/msg72918.html
>
> which does as was suggested here, selects HAVE_RCU_TABLE_FREE for
> PARAVIRT_TLB_FLUSH.
>
> But yes, this is very much virt specific nonsense, native would never
> need this.

In case we decide to go HAVE_RCU_TABLE_FREE for all PARAVIRT-enabled
kernels (as it seems to be the easiest/fastest way to fix Xen PV) - what
do you think about the required testing? Any suggestion for a
specifically crafted micro benchmark in addition to standard
ebizzy/kernbench/...?

Additionally, I see another option for us: enable 'rcu table free' on
boot (e.g. by taking tlb_remove_table to pv_ops and doing boot-time
patching for it) so bare metal and other hypervisors are not affected
by the change.

-- 
  Vitaly

  reply	other threads:[~2017-08-14 13:20 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-02 16:09 [PATCH v10 0/9] Hyper-V: paravirtualized remote TLB flushing and hypercall improvements Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 1/9] x86/hyper-v: include hyperv/ only when CONFIG_HYPERV is set Vitaly Kuznetsov
2017-08-10 16:37   ` [tip:x86/platform] x86/hyper-v: Include " tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 2/9] x86/hyper-v: make hv_do_hypercall() inline Vitaly Kuznetsov
2017-08-10 16:37   ` [tip:x86/platform] x86/hyper-v: Make " tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 3/9] x86/hyper-v: fast hypercall implementation Vitaly Kuznetsov
2017-08-10 16:37   ` [tip:x86/platform] x86/hyper-v: Introduce " tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 4/9] hyper-v: use fast hypercall for HVCALL_SIGNAL_EVENT Vitaly Kuznetsov
2017-08-10 16:38   ` [tip:x86/platform] hyper-v: Use " tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 5/9] x86/hyper-v: implement rep hypercalls Vitaly Kuznetsov
2017-08-10 16:38   ` [tip:x86/platform] x86/hyper-v: Implement " tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 6/9] hyper-v: globalize vp_index Vitaly Kuznetsov
2017-08-10 16:39   ` [tip:x86/platform] hyper-v: Globalize vp_index tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 7/9] x86/hyper-v: use hypercall for remote TLB flush Vitaly Kuznetsov
2017-08-10 16:39   ` [tip:x86/platform] x86/hyper-v: Use " tip-bot for Vitaly Kuznetsov
2017-08-10 18:21   ` tip-bot for Vitaly Kuznetsov
2017-08-10 18:56     ` Peter Zijlstra
2017-08-10 18:59       ` KY Srinivasan
2017-08-10 19:08         ` Jork Loeser
2017-08-10 19:27           ` Peter Zijlstra
2017-08-11  1:15             ` Jork Loeser
2017-08-11  9:03               ` Peter Zijlstra
2017-08-11 11:29                 ` Kirill A. Shutemov
2017-08-11 16:16                 ` Linus Torvalds
2017-08-11 16:26                   ` Peter Zijlstra
2017-08-14 13:20                     ` Vitaly Kuznetsov [this message]
2017-08-16 16:42                       ` Vitaly Kuznetsov
2017-08-16 21:41                         ` Boris Ostrovsky
2017-08-17  7:58                           ` Vitaly Kuznetsov
2017-08-11  9:23             ` Vitaly Kuznetsov
2017-08-11 10:56               ` Peter Zijlstra
2017-08-11 11:05                 ` Andrew Cooper
2017-08-11 11:05                 ` [Xen-devel] " Andrew Cooper
2017-08-11 12:07                   ` Peter Zijlstra
2017-08-11 12:07                     ` Peter Zijlstra
2017-08-16  0:02                     ` [Xen-devel] " Steven Rostedt
2017-08-16  0:02                     ` Steven Rostedt
2017-08-11 12:22                 ` Juergen Gross
2017-08-11 12:35                   ` Peter Zijlstra
2017-08-11 12:46                     ` Juergen Gross
2017-08-11 12:54                       ` Peter Zijlstra
2017-08-11 12:54                       ` Peter Zijlstra
2017-08-11 13:07                         ` Juergen Gross
2017-08-11 13:39                           ` Peter Zijlstra
2017-08-11 13:39                           ` Peter Zijlstra
2017-08-11 13:07                         ` Juergen Gross
2017-08-11 12:46                     ` Juergen Gross
2017-08-11 12:35                   ` Peter Zijlstra
2017-08-11 12:22                 ` Juergen Gross
2017-08-11 10:56               ` Peter Zijlstra
2017-08-02 16:09 ` [PATCH v10 8/9] x86/hyper-v: support extended CPU ranges for TLB flush hypercalls Vitaly Kuznetsov
2017-08-31 20:01   ` [tip:x86/platform] x86/hyper-v: Support " tip-bot for Vitaly Kuznetsov
2017-08-02 16:09 ` [PATCH v10 9/9] tracing/hyper-v: trace hyperv_mmu_flush_tlb_others() Vitaly Kuznetsov
2017-08-31 20:01   ` [tip:x86/platform] tracing/hyper-v: Trace hyperv_mmu_flush_tlb_others() tip-bot for Vitaly Kuznetsov
2017-08-10 11:58 ` [PATCH v10 0/9] Hyper-V: paravirtualized remote TLB flushing and hypercall improvements Vitaly Kuznetsov
2017-08-10 15:12   ` Ingo Molnar
2017-08-10 15:17     ` Vitaly Kuznetsov
2017-08-10 16:03 ` Ingo Molnar
2017-08-10 17:00   ` Vitaly Kuznetsov
2017-08-31 11:43 ` Vitaly Kuznetsov
2017-08-31 12:22   ` Ingo Molnar
2017-08-31 14:53     ` Vitaly Kuznetsov
2017-08-31 20:01       ` Ingo Molnar
2017-11-06  8:43 ` Wanpeng Li
2017-11-06  8:43   ` Wanpeng Li
2017-11-06  9:14   ` Vitaly Kuznetsov
2017-11-06  9:14     ` Vitaly Kuznetsov
2017-11-06  9:57     ` Wanpeng Li
2017-11-06  9:57       ` Wanpeng Li
2017-11-06 10:10       ` Vitaly Kuznetsov
2017-11-06 11:07         ` Wanpeng Li
2017-11-06 11:07           ` Wanpeng Li

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=87fucup9ou.fsf@vitty.brq.redhat.com \
    --to=vkuznets@redhat.com \
    --cc=Jork.Loeser@microsoft.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=haiyangz@microsoft.com \
    --cc=hpa@zytor.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=kys@microsoft.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=luto@kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=sixiao@microsoft.com \
    --cc=sthemmin@microsoft.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.