public inbox for devnull+historical-speck@kernel.org
 help / color / mirror / Atom feed
From: Nicolai Stange <nstange@suse.de>
To: speck@linutronix.de
Subject: [MODERATED] [RFC PATCH 0/6] kvm: handle host mode irqs 0
Date: Mon, 23 Jul 2018 11:54:55 +0200	[thread overview]
Message-ID: <cover.1532339695.git.nstange@suse.de> (raw)

Hi all,

there had been some discussion on whether or not IRQs that happened between
vmexit and the next vmenter should trigger L1d flushes, c.f. [1] and [2].

This series implements what Paolo suggested at [2]:

> handle at least the common case of softirqs by adding some kind of
> "# of times softirqs were run" percpu variable.

I chose to track irqs instead of softirqs only.

[1/6] - [3/6] are preparatory
[4/6] implements the "# of time irqs were run" percpu variable
[5/6] makes vmx issue L1d flushes if that count has changed
[6/6] is a followup cleanup to that

Each patch has been compile-tested on i686 and x86_64. However, only the
latter received some runtime testing.

Thanks,

Nicolai

[1] dc14f2c1-f69c-e690-dad2-8b4f1b772ee3@suse.de
[2] 3270ad99-2008-ccea-8e0a-d3fbf7fc4e50@redhat.com


Nicolai Stange (6):
  x86/KVM/VMX: don't set ->l1tf_flush_l1d to true from vmx_l1d_flush()
  x86/KVM/VMX: replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond'
  x86/KVM/VMX: move the ->l1tf_flush_l1d test to vmx_l1d_flush()
  x86: implement kernel mode irq tracking
  x86/KVM/VMX: flush L1d upon interrupt after VMEXIT
  x86/KVM/VMX: don't set ->l1tf_flush_l1d from
    vmx_handle_external_intr()

 arch/x86/Kconfig                 |  3 +++
 arch/x86/entry/entry_32.S        | 12 ++++++++++
 arch/x86/entry/entry_64.S        | 12 ++++++++++
 arch/x86/include/asm/kvm_host.h  |  1 +
 arch/x86/include/asm/processor.h |  4 ++++
 arch/x86/kernel/cpu/common.c     |  5 ++++
 arch/x86/kvm/Kconfig             |  1 +
 arch/x86/kvm/vmx.c               | 51 +++++++++++++++++++++++++++-------------
 8 files changed, 73 insertions(+), 16 deletions(-)

-- 
2.13.7

             reply	other threads:[~2018-07-23 10:36 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-23  9:54 Nicolai Stange [this message]
2018-07-21 20:16 ` [MODERATED] [RFC PATCH 1/6] kvm: handle host mode irqs 1 Nicolai Stange
2018-07-21 20:25 ` [MODERATED] [RFC PATCH 2/6] kvm: handle host mode irqs 2 Nicolai Stange
2018-07-21 20:35 ` [MODERATED] [RFC PATCH 3/6] kvm: handle host mode irqs 3 Nicolai Stange
2018-07-22  9:35 ` [MODERATED] [RFC PATCH 4/6] kvm: handle host mode irqs 4 Nicolai Stange
2018-07-23 15:40   ` [MODERATED] " Andi Kleen
2018-07-24  5:58     ` Nicolai Stange
2018-07-24 14:12       ` Andi Kleen
2018-07-24 14:39         ` Paolo Bonzini
2018-07-24 15:21   ` Peter Zijlstra
2018-07-25 11:45     ` Nicolai Stange
2018-07-27  7:45       ` Peter Zijlstra
2018-07-27  9:17         ` Nicolai Stange
2018-07-27  9:55           ` Paolo Bonzini
2018-07-29 20:00             ` Nicolai Stange
2018-07-22 11:06 ` [MODERATED] [RFC PATCH 5/6] kvm: handle host mode irqs 5 Nicolai Stange
2018-07-22 11:38 ` [MODERATED] [RFC PATCH 6/6] kvm: handle host mode irqs 6 Nicolai Stange

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=cover.1532339695.git.nstange@suse.de \
    --to=nstange@suse.de \
    --cc=speck@linutronix.de \
    /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