On 6/24/20 12:43 PM, Markus Armbruster wrote:
> s390_pci_set_fid() sets zpci->fid_defined to true even when
> visit_type_uint32() failed. Reproducer: "-device zpci,fid=junk".
> Harmless in practice, because qdev_device_add() then fails, throwing
> away @zpci. Fix it anyway.
>
> Cc: Matthew Rosato <mjrosato@linux.ibm.com>
> Cc: Cornelia Huck <cohuck@redhat.com>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
> hw/s390x/s390-pci-bus.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c
> index be8535304e..2e0eab1c69 100644
> --- a/hw/s390x/s390-pci-bus.c
> +++ b/hw/s390x/s390-pci-bus.c
> @@ -1265,7 +1265,9 @@ static void s390_pci_set_fid(Object *obj, Visitor *v, const char *name,
> return;
> }
>
> - visit_type_uint32(v, name, ptr, errp);
> + if (!visit_type_uint32(v, name, ptr, errp)) {
> + return;
> + }
> zpci->fid_defined = true;
> }
>
>
Assuming no major overhaul of patch #22:
Reviewed-by: Matthew Rosato <mjrosato@linux.ibm.com>