On Sat, 4 Feb 2012, Cyrill Gorcunov wrote:
In case if there error happened in kvm__init and we have
no files opened -- we should not try to close them.

Also once kvm failed to init the caller should not try
to dereference a pointer obtained, otherwise we might get
SIGSEV

| [cyrill@moon kvm]$ ./lkvm run ...
|  Error: '/dev/kvm' not found. Please make sure your kernel has CONFIG_KVM 
enabled and that the KVM modules are loaded.
| Segmentation fault (core dumped)
| [cyrill@moon kvm]$

Signed-off-by: Cyrill Gorcunov <[email protected]>
---
tools/kvm/builtin-run.c |    4 ++++
tools/kvm/kvm.c         |   11 ++++++++---
2 files changed, 12 insertions(+), 3 deletions(-)

Index: linux-2.6.git/tools/kvm/builtin-run.c
===================================================================
--- linux-2.6.git.orig/tools/kvm/builtin-run.c
+++ linux-2.6.git/tools/kvm/builtin-run.c
@@ -997,6 +997,10 @@ static int kvm_cmd_run_init(int argc, co
        }

        kvm = kvm__init(dev, hugetlbfs_path, ram_size, guest_name);
+       if (IS_ERR_OR_NULL(kvm)) {

PTR_ERR is still not going to work if kvm is NULL.

+               r = PTR_ERR(kvm);
+               goto fail;
+       }
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to