? 2013?04?08? 10:08, Simon Horman ??: > On Mon, Apr 08, 2013 at 09:38:49AM +0800, Zhang Yanfei wrote: >> ? 2013?04?08? 09:37, Simon Horman ??: >>> On Sat, Apr 06, 2013 at 01:39:40PM +0800, Zhang Yanfei wrote: >>>> From: Zhang Yanfei <zhangyanfei at cn.fujitsu.com> >>>> >>>> When compile kexec-tools in i386, we got the following warnings: >>>> >>>> kexec/kexec-elf-rel.c: In function ?elf_rel_set_symbol?: >>>> kexec/kexec-elf-rel.c:517: warning: format ?%ld? expects type ?long int?, but argument 4 has type ?size_t? >>>> kexec/kexec-elf-rel.c: In function ?elf_rel_get_symbol?: >>>> kexec/kexec-elf-rel.c:541: warning: format ?%ld? expects type ?long int?, but argument 4 has type ?size_t? >>>> >>>> This is because the two functions output a size_t value as %ld >>>> when it should be %zd, resulting in this warning. >>> >>> Thanks, >>> >>> This change looks good to me, however, the patch does >>> not appear to apply on the master branch of the kexec-tools tree. >>> Could you rebase and repost it? >> >> Really? Maybe I made some mistake. Anyway I will regenerate it and >> resend it again. > > Perhaps I made a mistake ^) > > The head commit I have is: > > commit 969f3e8c1c534f63b869183ccf292bcaef0e5558 > Author: Richard Weinberger <richard at nod.at> > Date: Mon Apr 1 13:23:04 2013 +0200 > > purgatory: remove arch/i386/timer.c > > This file is nowhere referenced, let's get rid of it. > > Signed-off-by: Richard Weinberger <richard at nod.at> > Signed-off-by: Simon Horman <horms at verge.net.au> > Same with you. I regenerate one, see below: --------------------------------------------- From: Zhang Yanfei <zhangyanfei@xxxxxxxxxxxxxx> Date: Mon, 8 Apr 2013 02:05:07 +0800 Subject: [PATCH] kexec, i386: Fix build warning of size_t print When compile kexec-tools in i386, we got the following warnings: kexec/kexec-elf-rel.c: In function ?elf_rel_set_symbol?: kexec/kexec-elf-rel.c:517: warning: format ?%ld? expects type ?long int?, but argument 4 has type ?size_t? kexec/kexec-elf-rel.c: In function ?elf_rel_get_symbol?: kexec/kexec-elf-rel.c:541: warning: format ?%ld? expects type ?long int?, but argument 4 has type ?size_t? This is because the two functions output a size_t value as %ld when it should be %zd, resulting in this warning. Signed-off-by: Zhang Yanfei <zhangyanfei at cn.fujitsu.com> --- kexec/kexec-elf-rel.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/kexec/kexec-elf-rel.c b/kexec/kexec-elf-rel.c index 38e34ec..f59140f 100644 --- a/kexec/kexec-elf-rel.c +++ b/kexec/kexec-elf-rel.c @@ -513,7 +513,7 @@ void elf_rel_set_symbol(struct mem_ehdr *ehdr, name); } if (sym.st_size != size) { - die("Symbol: %s has size: %lld not %ld\n", + die("Symbol: %s has size: %lld not %zd\n", name, sym.st_size, size); } shdr = &ehdr->e_shdr[sym.st_shndx]; @@ -537,7 +537,7 @@ void elf_rel_get_symbol(struct mem_ehdr *ehdr, die("Symbol: %s not found cannot get\n", name); } if (sym.st_size != size) { - die("Symbol: %s has size: %lld not %ld\n", + die("Symbol: %s has size: %lld not %zd\n", name, sym.st_size, size); } shdr = &ehdr->e_shdr[sym.st_shndx]; -- 1.7.1