diff options
author | Luiz Capitulino <lcapitulino@redhat.com> | 2016-09-07 14:47:21 -0400 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2016-09-16 10:57:46 -0400 |
commit | 9d5a1dcebfbe0e421412fcf5ab86d30e2e65bab4 (patch) | |
tree | cb065ab87a144924d42ac60bf90a675d00731fef | |
parent | 3e3f50262eb441d0fd1de4dce06739e9c0fe7c61 (diff) |
kvm: kvm_destroy_vm_debugfs(): check debugfs_stat_data pointer
This make it possible to call kvm_destroy_vm_debugfs() from
kvm_create_vm_debugfs() in error conditions.
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r-- | virt/kvm/kvm_main.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index a00f8e4045cf..a6e864c67e35 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c | |||
@@ -559,9 +559,11 @@ static void kvm_destroy_vm_debugfs(struct kvm *kvm) | |||
559 | 559 | ||
560 | debugfs_remove_recursive(kvm->debugfs_dentry); | 560 | debugfs_remove_recursive(kvm->debugfs_dentry); |
561 | 561 | ||
562 | for (i = 0; i < kvm_debugfs_num_entries; i++) | 562 | if (kvm->debugfs_stat_data) { |
563 | kfree(kvm->debugfs_stat_data[i]); | 563 | for (i = 0; i < kvm_debugfs_num_entries; i++) |
564 | kfree(kvm->debugfs_stat_data); | 564 | kfree(kvm->debugfs_stat_data[i]); |
565 | kfree(kvm->debugfs_stat_data); | ||
566 | } | ||
565 | } | 567 | } |
566 | 568 | ||
567 | static int kvm_create_vm_debugfs(struct kvm *kvm, int fd) | 569 | static int kvm_create_vm_debugfs(struct kvm *kvm, int fd) |