![]() |
Home ▼ Bookkeeping
Online ▼ Security
Audits ▼
Managed
DNS ▼
About
Order
FAQ
Acceptable Use Policy
Dynamic DNS Clients
Configure Domains Dyanmic DNS Update Password Network
Monitor ▼
Enterprise Package
Advanced Package
Standard Package
Free Trial
FAQ
Price/Feature Summary
Order/Renew
Examples
Configure/Status Alert Profiles | ||
CVE ID: | CVE-2021-47094 |
Description: | In the Linux kernel, the following vulnerability has been resolved:
KVM: x86/mmu: Don't advance iterator after restart due to yielding
After dropping mmu_lock in the TDP MMU, restart the iterator during
tdp_iter_next() and do not advance the iterator. Advancing the
iterator results in skipping the top-level SPTE and all its children,
which is fatal if any of the skipped SPTEs were not visited before
yielding. When zapping all SPTEs, i.e. when min_level == root_level,
restarting the iter and then invoking tdp_iter_next() is always fatal
if the current gfn has as a valid SPTE, as advancing the iterator
results in try_step_side() skipping the current gfn, which wasn't
visited before yielding. Sprinkle WARNs on iter->yielded being true in
various helpers that are often used in conjunction with yielding, and
tag the helper with __must_check to reduce the probabily of improper
usage. Failing to zap a top-level SPTE manifests in one of two ways.
If a valid SPTE is skipped by both kvm_tdp_mmu_zap_all() and
kvm_tdp_mmu_put_root(), the shadow page will be leaked and KVM will
WARN accordingly. WARNING: CPU: 1 PID: 3509 at
arch/x86/kvm/mmu/tdp_mmu.c:46 [kvm] RIP:
0010:kvm_mmu_uninit_tdp_mmu+0x3e/0x50 [kvm] Call Trace: |
Test IDs: | None available |
Cross References: |
Common Vulnerability Exposure (CVE) ID: CVE-2021-47094 https://git.kernel.org/stable/c/3a0f64de479cae75effb630a2e0a237ca0d0623c https://git.kernel.org/stable/c/3a0f64de479cae75effb630a2e0a237ca0d0623c https://git.kernel.org/stable/c/d884eefd75cc54887bc2e9e724207443525dfb2c https://git.kernel.org/stable/c/d884eefd75cc54887bc2e9e724207443525dfb2c |