[libvirt] [PATCH 1/4] qemu: Check if virQEMUCapsNewCopy(...) has failed

Marc Hartmayer posted 4 patches 9 years ago
[libvirt] [PATCH 1/4] qemu: Check if virQEMUCapsNewCopy(...) has failed
Posted by Marc Hartmayer 9 years ago
Check if virQEMUCapsNewCopy(...) has failed, thus a segmentation fault
in virQEMUCapsFilterByMachineType(...) will be avoided.

Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com>
Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com>
---
 src/qemu/qemu_capabilities.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 3247d25..399e314 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -4928,6 +4928,10 @@ virQEMUCapsCacheLookupCopy(virCapsPtr caps,
 
     ret = virQEMUCapsNewCopy(qemuCaps);
     virObjectUnref(qemuCaps);
+
+    if (!ret)
+        return NULL;
+
     virQEMUCapsFilterByMachineType(ret, machineType);
     return ret;
 }
-- 
2.5.5

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 1/4] qemu: Check if virQEMUCapsNewCopy(...) has failed
Posted by Marc Hartmayer 9 years ago
On Thu, Feb 09, 2017 at 03:13 PM +0100, Marc Hartmayer <mhartmay@linux.vnet.ibm.com> wrote:
> Check if virQEMUCapsNewCopy(...) has failed, thus a segmentation fault
> in virQEMUCapsFilterByMachineType(...) will be avoided.
>
> Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com>
> Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com>
> ---
>  src/qemu/qemu_capabilities.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> index 3247d25..399e314 100644
> --- a/src/qemu/qemu_capabilities.c
> +++ b/src/qemu/qemu_capabilities.c
> @@ -4928,6 +4928,10 @@ virQEMUCapsCacheLookupCopy(virCapsPtr caps,
>
>      ret = virQEMUCapsNewCopy(qemuCaps);
>      virObjectUnref(qemuCaps);
> +
> +    if (!ret)
> +        return NULL;
> +
>      virQEMUCapsFilterByMachineType(ret, machineType);
>      return ret;
>  }
> --
> 2.5.5
>

Another solution would be to add a cleanup path - not sure which one is better.

--
Beste Grüße / Kind regards
   Marc Hartmayer

IBM Deutschland Research & Development GmbH
Vorsitzende des Aufsichtsrats: Martina Koederitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294


--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 1/4] qemu: Check if virQEMUCapsNewCopy(...) has failed
Posted by Laine Stump 9 years ago
On 02/09/2017 09:13 AM, Marc Hartmayer wrote:
> Check if virQEMUCapsNewCopy(...) has failed, thus a segmentation fault
> in virQEMUCapsFilterByMachineType(...) will be avoided.
>
> Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com>
> Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com>
> ---
>   src/qemu/qemu_capabilities.c | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> index 3247d25..399e314 100644
> --- a/src/qemu/qemu_capabilities.c
> +++ b/src/qemu/qemu_capabilities.c
> @@ -4928,6 +4928,10 @@ virQEMUCapsCacheLookupCopy(virCapsPtr caps,
>   
>       ret = virQEMUCapsNewCopy(qemuCaps);
>       virObjectUnref(qemuCaps);
> +
> +    if (!ret)
> +        return NULL;
> +
>       virQEMUCapsFilterByMachineType(ret, machineType);
>       return ret;
>   }


ACK (and to respond to your self-reply, I don't think a cleanup: label 
is necessary. The function is too simple to bother cluttering it up).


I'll push these all in a minute (except 4/4, where I'm waiting for your 
approval to a small change)

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list