On 29/06/20 13:23, Eric Auger wrote: > Attempting to add an object through QMP with an id that is > already used leads to a qemu abort. This is a regression since > d2623129a7de ("qom: Drop parameter @errp of object_property_add() > & friends"). > > The first patch fixes the issue and the second patch adds a test > to check the error is gracefully returned to the QMP client. > > The last patch can be considered independently. It merges all the > object-add tests into a single test function and cover new failure > cases. > > Best Regards > > Eric > > This series can be found at: > https://github.com/eauger/qemu/tree/qom-graceful-v4 > > History: > - v3 -> v4: > - addressed style comment from Markus > - added patch 3 > > - v2 -> v3: > - don't take the object reference on failure in > object_property_try_add_child > - add g_assert_nonnull(resp) in 2/2 while keeping > Thomas A-b > > - v1 -> v2: > - use the try terminology. > - turn object_property_try_add() into a non-static function > - add the test > > > Eric Auger (3): > qom: Introduce object_property_try_add_child() > tests/qmp-cmd-test: Add qmp/object-add-duplicate-id > tests/qmp-cmd-test: Add qmp/object-add-failure-modes > > include/qom/object.h | 26 +++++++++- > qom/object.c | 21 ++++++-- > qom/object_interfaces.c | 7 ++- > tests/qtest/qmp-cmd-test.c | 99 ++++++++++++++++++++++++++++++++++++-- > 4 files changed, 140 insertions(+), 13 deletions(-) >
Very nice. I see a failure reported by Patchew, I'll look into it as well if you don't have time. Paolo