From: Jeremy Fitzhardinge Date: Wed, 11 Feb 2009 17:32:19 +0000 (-0800) Subject: x86/cpa: make sure cpa is safe to call in lazy mmu mode X-Git-Tag: v2.6.27.19~25 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0bc833ff5ca8f4dba884b2eb95116e0da36185b;p=pandora-kernel.git x86/cpa: make sure cpa is safe to call in lazy mmu mode commit 4f06b0436b2ddbd3b67b10e77098a6862787b3eb upstream. Impact: fix race leading to crash under KVM and Xen The CPA code may be called while we're in lazy mmu update mode - for example, when using DEBUG_PAGE_ALLOC and doing a slab allocation in an interrupt handler which interrupted a lazy mmu update. In this case, the in-memory pagetable state may be out of date due to pending queued updates. We need to flush any pending updates before inspecting the page table. Similarly, we must explicitly flush any modifications CPA may have made (which comes down to flushing queued operations when flushing the TLB). Signed-off-by: Jeremy Fitzhardinge Acked-by: Marcelo Tosatti Signed-off-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed