qom/object.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
When recursing, the return value of do_object_child_foreach() is not
taken into account.
Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Fixes: d714b8de7747 ("qom: Add recursive version of object_child_for_each")
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
qom/object.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/qom/object.c b/qom/object.c
index 1812f792247d..b68a707a5e65 100644
--- a/qom/object.c
+++ b/qom/object.c
@@ -1057,7 +1057,10 @@ static int do_object_child_foreach(Object *obj,
break;
}
if (recurse) {
- do_object_child_foreach(child, fn, opaque, true);
+ ret = do_object_child_foreach(child, fn, opaque, true);
+ if (ret != 0) {
+ break;
+ }
}
}
}
--
2.25.1
Hello David, On 4/4/20 5:33 PM, Cédric Le Goater wrote: > When recursing, the return value of do_object_child_foreach() is not > taken into account. Patch "ppc/pnv: Create BMC devices only when defaults are enabled" : http://patchwork.ozlabs.org/patch/1266421 depends on this fix. May be it can go through the ppc branch ? A patchset with these two patches would have been easier to track :/ Sorry about that. Thanks, C. > Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > Fixes: d714b8de7747 ("qom: Add recursive version of object_child_for_each") > Signed-off-by: Cédric Le Goater <clg@kaod.org> > --- > qom/object.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/qom/object.c b/qom/object.c > index 1812f792247d..b68a707a5e65 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -1057,7 +1057,10 @@ static int do_object_child_foreach(Object *obj, > break; > } > if (recurse) { > - do_object_child_foreach(child, fn, opaque, true); > + ret = do_object_child_foreach(child, fn, opaque, true); > + if (ret != 0) { > + break; > + } > } > } > } >
Hi, On Sat, Apr 4, 2020 at 5:34 PM Cédric Le Goater <clg@kaod.org> wrote: > > When recursing, the return value of do_object_child_foreach() is not > taken into account. > > Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > Fixes: d714b8de7747 ("qom: Add recursive version of object_child_for_each") > Signed-off-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > qom/object.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/qom/object.c b/qom/object.c > index 1812f792247d..b68a707a5e65 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -1057,7 +1057,10 @@ static int do_object_child_foreach(Object *obj, > break; > } > if (recurse) { > - do_object_child_foreach(child, fn, opaque, true); > + ret = do_object_child_foreach(child, fn, opaque, true); > + if (ret != 0) { > + break; > + } > } > } > } > -- > 2.25.1 > > -- Marc-André Lureau
Hello, On 4/4/20 5:33 PM, Cédric Le Goater wrote: > When recursing, the return value of do_object_child_foreach() is not > taken into account. > > Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > Fixes: d714b8de7747 ("qom: Add recursive version of object_child_for_each") > Signed-off-by: Cédric Le Goater <clg@kaod.org> What are the plans to merge this one ? Thanks, C. > --- > qom/object.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/qom/object.c b/qom/object.c > index 1812f792247d..b68a707a5e65 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -1057,7 +1057,10 @@ static int do_object_child_foreach(Object *obj, > break; > } > if (recurse) { > - do_object_child_foreach(child, fn, opaque, true); > + ret = do_object_child_foreach(child, fn, opaque, true); > + if (ret != 0) { > + break; > + } > } > } > } >
On 4/4/20 5:33 PM, Cédric Le Goater wrote: > When recursing, the return value of do_object_child_foreach() is not > taken into account. > > Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > Fixes: d714b8de7747 ("qom: Add recursive version of object_child_for_each") Indeed. Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > Signed-off-by: Cédric Le Goater <clg@kaod.org> > --- > qom/object.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/qom/object.c b/qom/object.c > index 1812f792247d..b68a707a5e65 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -1057,7 +1057,10 @@ static int do_object_child_foreach(Object *obj, > break; > } > if (recurse) { > - do_object_child_foreach(child, fn, opaque, true); > + ret = do_object_child_foreach(child, fn, opaque, true); > + if (ret != 0) { > + break; > + } > } > } > } >
© 2016 - 2024 Red Hat, Inc.