Skip to content

x86/kvm: RCU/context tracking and instrumentation protections

Thomas Gleixner kvm lkml 2 versions – Applied

Status from this message: Queued, thanks.

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest7 patches 2 repliesApplied
  2. v17 patches 1 replySuperseded

Patches in v2 Applied

#Subject and filesSizeRepliesApplied
1/7x86/kvm: Move context tracking where it belongsarch/x86/kvm/svm/svm.c arch/x86/kvm/vmx/vmx.c arch/x86/kvm/x86.c+26 -20 replies
2/7x86/kvm/vmx: Add hardirq tracing to guest enter/exitarch/x86/kvm/vmx/vmx.c+25 -20 replies
3/7x86/kvm/svm: Add hardirq tracing on guest enter/exitarch/x86/kvm/svm/svm.c+22 -50 replies
4/7x86/kvm/vmx: Move guest enter/exit into .noinstr.textarch/x86/include/asm/hardirq.h arch/x86/include/asm/kvm_host.h arch/x86/kvm/vmx/ops.h +3 more+81 -530 replies
5/7x86/kvm/svm: Move guest enter/exit into .noinstr.textarch/x86/kvm/svm/svm.c arch/x86/kvm/svm/vmenter.S+56 -440 replies
6/7x86/kvm/svm: Use uninstrumented wrmsrl() to restore GSarch/x86/kvm/svm/svm.c+1 -10 replies
7/7x86/kvm/vmx: Use native read/write_cr2()arch/x86/kvm/vmx/vmx.c+3 -31 reply

Reviews trailers per patch

All 7 patches have a Reviewed-by or Acked-by.

PatchAlexandre ChartrePeter ZijlstraPaolo BonziniJuergen Gross
1/7R-b A-b A-b
2/7R-b A-b A-b
3/7R-b A-b A-b
4/7R-b A-b A-b
5/7R-b A-b A-b
6/7A-b
7/7R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 4 reviewers.

Read the v2 thread

Cover letter [patch V2 0/7] x86/kvm: RCU/context tracking and instrumentation protections

Folks,

this is a rebased and adopted version of the original series which is available here:

     https://lore.kernel.org/r/[email protected]

It deals with the RCU and context tracking state and the protection against instrumentation in sensitive places:

- Placing the guest_enter/exit() calls at the correct place

- Moving the sensitive VMENTER/EXIT code into the non-instrumentable code section.

- Fixup the tracing code to comply with the non-instrumentation rules

- Use native functions to access CR2 and the GS base MSR in the critical code pathes to prevent them from being instrumented.

Thanks,

tglx