> 在 2019年1月8日,01:21,Markus Armbruster <arm...@redhat.com> 写道:
>
> Fei Li <f...@suse.com> writes:
>
>> Utilize the existed errp to propagate the error instead of the
>> temporary &error_abort.
>>
>> Cc: Markus Armbruster <arm...@redhat.com>
>> Cc: Marc-André Lureau <marcandre.lur...@redhat.com>
>> Signed-off-by: Fei Li <f...@suse.com>
>> ---
>> dump.c | 7 ++++---
>> 1 file changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/dump.c b/dump.c
>> index c35d6ddd22..ef5ea324fa 100644
>> --- a/dump.c
>> +++ b/dump.c
>> @@ -2020,9 +2020,10 @@ void qmp_dump_guest_memory(bool paging, const char
>> *file,
>> if (detach_p) {
>> /* detached dump */
>> s->detached = true;
>> - /* TODO: let the further caller handle the error instead of abort()
>> */
>> - qemu_thread_create(&s->dump_thread, "dump_thread", dump_thread,
>> - s, QEMU_THREAD_DETACHED, &error_abort);
>> + if (!qemu_thread_create(&s->dump_thread, "dump_thread", dump_thread,
>> + s, QEMU_THREAD_DETACHED, errp)) {
>> + /* keep 'if' here in case there is further error handling logic
>> */
>> + }
>
> I don't think keeping the conditional "just in case" is worthwhile.
> Plain
>
> qemu_thread_create(&s->dump_thread, "dump_thread", dump_thread,
> s, QEMU_THREAD_DETACHED, errp);
>
> should do fine.
Ok, will simplify this in next version.
Have a nice day, thanks
Fei
>
>> } else {
>> /* sync dump */
>> dump_process(s, errp);