On 06/08/2015 16:13, Nicholas Krause wrote: > This fixes the calls to x86_memory_region to trigger a kernel > oopes for tracing if a bug arises in the function kvm_arch_destroy > due to the failing of any of its internal calls to x86_set_memory_region. > > Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx> > --- > arch/x86/kvm/x86.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index 5ef2560..3866cf3 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -7745,6 +7745,7 @@ EXPORT_SYMBOL_GPL(x86_set_memory_region); > > void kvm_arch_destroy_vm(struct kvm *kvm) > { > + int ret; > if (current->mm == kvm->mm) { > /* > * Free memory regions allocated on behalf of userspace, > @@ -7754,13 +7755,16 @@ void kvm_arch_destroy_vm(struct kvm *kvm) > struct kvm_userspace_memory_region mem; > memset(&mem, 0, sizeof(mem)); > mem.slot = APIC_ACCESS_PAGE_PRIVATE_MEMSLOT; > - x86_set_memory_region(kvm, &mem); > + ret = x86_set_memory_region(kvm, &mem); > + BUG_ON(ret); > > mem.slot = IDENTITY_PAGETABLE_PRIVATE_MEMSLOT; > - x86_set_memory_region(kvm, &mem); > + ret = x86_set_memory_region(kvm, &mem); > + BUG_ON(ret); > > mem.slot = TSS_PRIVATE_MEMSLOT; > - x86_set_memory_region(kvm, &mem); > + ret = x86_set_memory_region(kvm, &mem); > + BUG_ON(ret); > } > kvm_iommu_unmap_guest(kvm); > kfree(kvm->arch.vpic); > No, not at all! Leaking 12k of RAM is not a reason to crash the machine. WARN_ON would be acceptable. Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html