On 09/03/2014 03:54 AM, zhanghailiang wrote: > The second parameter of dump_error is unused, but one purpose of > using this function is to report the error info. > > Use error_set to return the error info to the caller. > > Signed-off-by: zhanghailiang <[email protected]> > --- > V3: > - Drop the '\n' in the message when call dump_error(comment of Eric Blake) > V2: > - Return the error reason to the caller which suggested by Luiz Capitulino. > --- > dump.c | 165 > ++++++++++++++++++++++++++++++++--------------------------------- > 1 file changed, 82 insertions(+), 83 deletions(-) > > diff --git a/dump.c b/dump.c > index 71d3e94..a08a711 100644 > --- a/dump.c > +++ b/dump.c > @@ -81,9 +81,10 @@ static int dump_cleanup(DumpState *s) > return 0; > } > > -static void dump_error(DumpState *s, const char *reason) > +static void dump_error(DumpState *s, Error **errp, const char *reason)
I still think it is unusual to list the errp argument in the middle,
instead of the end. But not necessarily a show-stopper.
> -static int write_elf64_header(DumpState *s)
> +static int write_elf64_header(DumpState *s, Error **errp)
> {
> Elf64_Ehdr elf_header;
> int ret;
> @@ -126,14 +127,14 @@ static int write_elf64_header(DumpState *s)
>
> ret = fd_write_vmcore(&elf_header, sizeof(elf_header), s);
> if (ret < 0) {
> - dump_error(s, "dump: failed to write elf header.\n");
> + dump_error(s, errp, "dump: failed to write elf header.");
We tend to avoid trailing '.' in error messages
> +static int write_dump_pages(DumpState *s, Error **errp)
> {
> int ret = 0;
> DataCache page_desc, page_data;
> @@ -1241,7 +1244,7 @@ static int write_dump_pages(DumpState *s)
> ret = write_cache(&page_data, buf, TARGET_PAGE_SIZE, false);
> g_free(buf);
> if (ret < 0) {
> - dump_error(s, "dump: failed to write page data(zero page).\n");
> + dump_error(s, errp, "dump: failed to write page data(zero page).");
Pre-existing, but worth fixing: space before () in English sentences.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
