From: Zdenek Kaspar <zkaspar82@gmail.com>
To: Ben Gardon <bgardon@google.com>
Cc: "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
Jim Mattson <jmattson@google.com>
Subject: Re: Unable to start VM with 5.10-rc3
Date: Wed, 11 Nov 2020 12:09:39 +0100 [thread overview]
Message-ID: <20201111120939.54929a50.zkaspar82@gmail.com> (raw)
In-Reply-To: <CANgfPd-gaDhmwPm5CC=cAFn8mBczbUjs7u3KucAGdKmU81Vbeg@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2176 bytes --]
Hi, I'm sure my bisect has nothing to do with KVM,
because it was quick shot between -rc1 and previous release.
This old CPU doesn't have EPT (see attached file)
./run_tests.sh
FAIL apic-split (timeout; duration=90s)
FAIL ioapic-split (timeout; duration=90s)
FAIL apic (timeout; duration=30)
... ^C
few RIP is_tdp_mmu_root observed in dmesg
Z.
On Tue, 10 Nov 2020 17:13:21 -0800
Ben Gardon <bgardon@google.com> wrote:
> Hi Zdenek,
>
> That crash is most likely the result of a missing check for an invalid
> root HPA or NULL shadow page in is_tdp_mmu_root, which could have
> prevented the NULL pointer dereference.
> However, I'm not sure how a vCPU got to that point in the page fault
> handler with a bad EPT root page.
>
> I see VMX in your list of flags, is your machine 64 bit with EPT or
> some other configuration?
>
> I'm surprised you are finding your machine unable to boot for
> bisecting. Do you know if it's crashing in the same spot or somewhere
> else? I wouldn't expect the KVM page fault handler to run as part of
> boot.
>
> I will send out a patch first thing tomorrow morning (PST) to WARN
> instead of crashing with a NULL pointer dereference. Are you able to
> reproduce the issue with any KVM selftest?
>
> Ben
>
>
> On Tue, Nov 10, 2020 at 7:24 AM Zdenek Kaspar <zkaspar82@gmail.com>
> wrote:
> >
> > Hi,
> >
> > attached file is result from today's linux-master (with fixes
> > for 5.10-rc4) when I try to start VM on older machine:
> >
> > model name : Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz
> > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr
> > pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ht tm pbe
> > syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl
> > cpuid aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16
> > xtpr pdcm lahf_lm pti tpr_shadow dtherm vmx flags :
> > tsc_offset vtpr
> >
> > I did quick check with 5.9 (distro kernel) and it works,
> > but VM performance seems extremely impacted. 5.8 works fine.
> >
> > Back to 5.10 issue: it's problematic since 5.10-rc1 and I have no
> > luck with bisecting (machine doesn't boot).
> >
> > TIA, Z.
[-- Attachment #2: vmxcap-out --]
[-- Type: application/octet-stream, Size: 5466 bytes --]
Basic VMX Information
Hex: 0x1a040000000007
Revision 7
VMCS size 1024
VMCS restricted to 32 bit addresses no
Dual-monitor support yes
VMCS memory type 6
INS/OUTS instruction information no
IA32_VMX_TRUE_*_CTLS support no
pin-based controls
External interrupt exiting yes
NMI exiting yes
Virtual NMIs no
Activate VMX-preemption timer no
Process posted interrupts no
primary processor-based controls
Interrupt window exiting yes
Use TSC offsetting yes
HLT exiting yes
INVLPG exiting yes
MWAIT exiting yes
RDPMC exiting yes
RDTSC exiting yes
CR3-load exiting forced
CR3-store exiting forced
CR8-load exiting yes
CR8-store exiting yes
Use TPR shadow yes
NMI-window exiting no
MOV-DR exiting yes
Unconditional I/O exiting yes
Use I/O bitmaps yes
Monitor trap flag no
Use MSR bitmaps yes
MONITOR exiting yes
PAUSE exiting yes
Activate secondary control no
secondary processor-based controls
Virtualize APIC accesses no
Enable EPT no
Descriptor-table exiting no
Enable RDTSCP no
Virtualize x2APIC mode no
Enable VPID no
WBINVD exiting no
Unrestricted guest no
APIC register emulation no
Virtual interrupt delivery no
PAUSE-loop exiting no
RDRAND exiting no
Enable INVPCID no
Enable VM functions no
VMCS shadowing no
Enable ENCLS exiting no
RDSEED exiting no
Enable PML no
EPT-violation #VE no
Conceal non-root operation from PT no
Enable XSAVES/XRSTORS no
Mode-based execute control (XS/XU) no
Sub-page write permissions no
GPA translation for PT no
TSC scaling no
User wait and pause no
ENCLV exiting no
VM-Exit controls
Save debug controls forced
Host address-space size yes
Load IA32_PERF_GLOBAL_CTRL no
Acknowledge interrupt on exit yes
Save IA32_PAT no
Load IA32_PAT no
Save IA32_EFER no
Load IA32_EFER no
Save VMX-preemption timer value no
Clear IA32_BNDCFGS no
Conceal VM exits from PT no
Clear IA32_RTIT_CTL no
VM-Entry controls
Load debug controls forced
IA-32e mode guest yes
Entry to SMM yes
Deactivate dual-monitor treatment yes
Load IA32_PERF_GLOBAL_CTRL no
Load IA32_PAT no
Load IA32_EFER no
Load IA32_BNDCFGS no
Conceal VM entries from PT no
Load IA32_RTIT_CTL no
Miscellaneous data
Hex: 0x403c0
VMX-preemption timer scale (log2) 0
Store EFER.LMA into IA-32e mode guest control no
HLT activity state yes
Shutdown activity state yes
Wait-for-SIPI activity state yes
PT in VMX operation no
IA32_SMBASE support no
Number of CR3-target values 4
MSR-load/store count recommendation 0
IA32_SMM_MONITOR_CTL[2] can be set to 1 no
VMWRITE to VM-exit information fields no
Inject event with insn length=0 no
MSEG revision identifier 0
VPID and EPT capabilities
Hex: 0x0
Execute-only EPT translations no
Page-walk length 4 no
Paging-structure memory type UC no
Paging-structure memory type WB no
2MB EPT pages no
1GB EPT pages no
INVEPT supported no
EPT accessed and dirty flags no
Advanced VM-exit information for EPT violations no
Single-context INVEPT no
All-context INVEPT no
INVVPID supported no
Individual-address INVVPID no
Single-context INVVPID no
All-context INVVPID no
Single-context-retaining-globals INVVPID no
VM Functions
Hex: 0x0
EPTP Switching no
next prev parent reply other threads:[~2020-11-11 11:09 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-10 15:23 Unable to start VM with 5.10-rc3 Zdenek Kaspar
2020-11-11 1:13 ` Ben Gardon
2020-11-11 11:09 ` Zdenek Kaspar [this message]
2020-11-11 18:37 ` Ben Gardon
2020-11-11 22:16 ` Zdenek Kaspar
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=20201111120939.54929a50.zkaspar82@gmail.com \
--to=zkaspar82@gmail.com \
--cc=bgardon@google.com \
--cc=jmattson@google.com \
--cc=kvm@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox