From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:42098) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sdtkj-00059q-Ja for qemu-devel@nongnu.org; Sun, 10 Jun 2012 21:49:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Sdtkh-0006xG-68 for qemu-devel@nongnu.org; Sun, 10 Jun 2012 21:49:09 -0400 Received: from [222.73.24.84] (port=62593 helo=song.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sdtkg-0006ta-QE for qemu-devel@nongnu.org; Sun, 10 Jun 2012 21:49:07 -0400 Message-ID: <4FD54F69.1070202@cn.fujitsu.com> Date: Mon, 11 Jun 2012 09:52:41 +0800 From: Wen Congyang MIME-Version: 1.0 References: <1339054814-20939-1-git-send-email-pbonzini@redhat.com> <1339054814-20939-9-git-send-email-pbonzini@redhat.com> In-Reply-To: <1339054814-20939-9-git-send-email-pbonzini@redhat.com> Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [Qemu-devel] [PATCH v3 08/29] dump: change cpu_get_note_size to return ssize_t List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel@nongnu.org, anthony@codemonkey.ws Hi, Paolo Thank you for doing this. At 06/07/2012 03:39 PM, Paolo Bonzini Wrote: > So that it can use the same prototype in both cases. Check for failure. > > Cc: Wen Congyang > Signed-off-by: Paolo Bonzini > --- > cpu-all.h | 4 ++-- > dump.c | 9 +++++++-- > target-i386/arch_dump.c | 2 +- > 3 files changed, 10 insertions(+), 5 deletions(-) > > diff --git a/cpu-all.h b/cpu-all.h > index e8749de..624030d 100644 > --- a/cpu-all.h > +++ b/cpu-all.h > @@ -552,7 +552,7 @@ int cpu_write_elf64_qemunote(write_core_dump_function f, CPUArchState *env, > int cpu_write_elf32_qemunote(write_core_dump_function f, CPUArchState *env, > void *opaque); > int cpu_get_dump_info(ArchDumpInfo *info); > -size_t cpu_get_note_size(int class, int machine, int nr_cpus); > +ssize_t cpu_get_note_size(int class, int machine, int nr_cpus); > #else > static inline int cpu_write_elf64_note(write_core_dump_function f, > CPUArchState *env, int cpuid, > @@ -587,7 +587,7 @@ static inline int cpu_get_dump_info(ArchDumpInfo *info) > return -1; > } > > -static inline int cpu_get_note_size(int class, int machine, int nr_cpus) > +static inline ssize_t cpu_get_note_size(int class, int machine, int nr_cpus) > { > return -1; > } > diff --git a/dump.c b/dump.c > index 0ca14f8..b24d4be 100644 > --- a/dump.c > +++ b/dump.c > @@ -750,6 +750,13 @@ static int dump_init(DumpState *s, int fd, bool paging, bool has_filter, > goto cleanup; > } > > + s->note_size = cpu_get_note_size(s->dump_info.d_class, > + s->dump_info.d_machine, nr_cpus); > + if (ret < 0) { Hmm, I guess you want to check cpu_get_note_size()'s return value here. Thanks Wen Congyang > + error_set(errp, QERR_UNSUPPORTED); > + goto cleanup; > + } > + > /* get memory mapping */ > memory_mapping_list_init(&s->list); > if (paging) { > @@ -784,8 +791,6 @@ static int dump_init(DumpState *s, int fd, bool paging, bool has_filter, > } > } > > - s->note_size = cpu_get_note_size(s->dump_info.d_class, > - s->dump_info.d_machine, nr_cpus); > if (s->dump_info.d_class == ELFCLASS64) { > if (s->have_section) { > s->memory_offset = sizeof(Elf64_Ehdr) + > diff --git a/target-i386/arch_dump.c b/target-i386/arch_dump.c > index 135d855..7c2b514 100644 > --- a/target-i386/arch_dump.c > +++ b/target-i386/arch_dump.c > @@ -415,7 +415,7 @@ int cpu_get_dump_info(ArchDumpInfo *info) > return 0; > } > > -size_t cpu_get_note_size(int class, int machine, int nr_cpus) > +ssize_t cpu_get_note_size(int class, int machine, int nr_cpus) > { > int name_size = 5; /* "CORE" or "QEMU" */ > size_t elf_note_size = 0;