* Re: [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() [not found] ` <1442562171-21307-2-git-send-email-yanjiang.jin@windriver.com> @ 2015-09-21 2:16 ` yjin 2015-09-21 2:16 ` yjin 2015-09-21 2:23 ` yjin 0 siblings, 2 replies; 4+ messages in thread From: yjin @ 2015-09-21 2:16 UTC (permalink / raw) To: ralf; +Cc: akpm, mhuang, kexec, chaowang, linux-kernel, jinyanjiang, linux-mips [-- Attachment #1: Type: text/plain, Size: 2128 bytes --] The new version patch only modifies mips/elf.h, so add Ralf Baechle and cc linux-mips@linux-mips.org. This is a V2 patch, attach the V1 patch for reference. Thanks! Yanjiang On 2015年09月18日 15:42, yanjiang.jin@windriver.com wrote: > From: Yanjiang Jin <yanjiang.jin@windriver.com> > > elf_check_arch() will be called both in parse_crash_elf64_headers() > and parse_crash_elf32_headers(). But in these two functions, the type of > the parameter ehdr is different: Elf32_Ehdr and Elf64_Ehdr. > > Function parse_crash_elf_headers() reads e_ident[EI_CLASS] then decides to > call parse_crash_elf64_headers() or parse_crash_elf32_headers(). > This happens in run time, not compile time. So compiler will report > the below warning: > > In file included from include/linux/elf.h:4:0, > from fs/proc/vmcore.c:13: > fs/proc/vmcore.c: In function 'parse_crash_elf32_headers': > arch/mips/include/asm/elf.h:258:23: warning: initializatio > n from incompatible pointer type > struct elfhdr *__h = (hdr); \ > ^ > fs/proc/vmcore.c:1071:4: note: in expansion of macro 'elf_ > check_arch' > !elf_check_arch(&ehdr) || > ^ > > Signed-off-by: Yanjiang Jin <yanjiang.jin@windriver.com> > --- > arch/mips/include/asm/elf.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/mips/include/asm/elf.h b/arch/mips/include/asm/elf.h > index f19e890..ece490d 100644 > --- a/arch/mips/include/asm/elf.h > +++ b/arch/mips/include/asm/elf.h > @@ -224,7 +224,7 @@ struct mips_elf_abiflags_v0 { > #define elf_check_arch(hdr) \ > ({ \ > int __res = 1; \ > - struct elfhdr *__h = (hdr); \ > + struct elfhdr *__h = (struct elfhdr *)(hdr); \ > \ > if (__h->e_machine != EM_MIPS) \ > __res = 0; \ > @@ -255,7 +255,7 @@ struct mips_elf_abiflags_v0 { > #define elf_check_arch(hdr) \ > ({ \ > int __res = 1; \ > - struct elfhdr *__h = (hdr); \ > + struct elfhdr *__h = (struct elfhdr *)(hdr); \ > \ > if (__h->e_machine != EM_MIPS) \ > __res = 0; \ [-- Attachment #2: Re: [PATCH] vmcore: replace Elf64_Ehdr_Elf32_Ehdr with elfhdr.eml --] [-- Type: application/x-extension-eml, Size: 5547 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() 2015-09-21 2:16 ` [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() yjin @ 2015-09-21 2:16 ` yjin 2015-09-21 2:23 ` yjin 1 sibling, 0 replies; 4+ messages in thread From: yjin @ 2015-09-21 2:16 UTC (permalink / raw) To: ralf; +Cc: akpm, mhuang, kexec, chaowang, linux-kernel, jinyanjiang, linux-mips [-- Attachment #1: Type: text/plain, Size: 2128 bytes --] The new version patch only modifies mips/elf.h, so add Ralf Baechle and cc linux-mips@linux-mips.org. This is a V2 patch, attach the V1 patch for reference. Thanks! Yanjiang On 2015年09月18日 15:42, yanjiang.jin@windriver.com wrote: > From: Yanjiang Jin <yanjiang.jin@windriver.com> > > elf_check_arch() will be called both in parse_crash_elf64_headers() > and parse_crash_elf32_headers(). But in these two functions, the type of > the parameter ehdr is different: Elf32_Ehdr and Elf64_Ehdr. > > Function parse_crash_elf_headers() reads e_ident[EI_CLASS] then decides to > call parse_crash_elf64_headers() or parse_crash_elf32_headers(). > This happens in run time, not compile time. So compiler will report > the below warning: > > In file included from include/linux/elf.h:4:0, > from fs/proc/vmcore.c:13: > fs/proc/vmcore.c: In function 'parse_crash_elf32_headers': > arch/mips/include/asm/elf.h:258:23: warning: initializatio > n from incompatible pointer type > struct elfhdr *__h = (hdr); \ > ^ > fs/proc/vmcore.c:1071:4: note: in expansion of macro 'elf_ > check_arch' > !elf_check_arch(&ehdr) || > ^ > > Signed-off-by: Yanjiang Jin <yanjiang.jin@windriver.com> > --- > arch/mips/include/asm/elf.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/mips/include/asm/elf.h b/arch/mips/include/asm/elf.h > index f19e890..ece490d 100644 > --- a/arch/mips/include/asm/elf.h > +++ b/arch/mips/include/asm/elf.h > @@ -224,7 +224,7 @@ struct mips_elf_abiflags_v0 { > #define elf_check_arch(hdr) \ > ({ \ > int __res = 1; \ > - struct elfhdr *__h = (hdr); \ > + struct elfhdr *__h = (struct elfhdr *)(hdr); \ > \ > if (__h->e_machine != EM_MIPS) \ > __res = 0; \ > @@ -255,7 +255,7 @@ struct mips_elf_abiflags_v0 { > #define elf_check_arch(hdr) \ > ({ \ > int __res = 1; \ > - struct elfhdr *__h = (hdr); \ > + struct elfhdr *__h = (struct elfhdr *)(hdr); \ > \ > if (__h->e_machine != EM_MIPS) \ > __res = 0; \ [-- Attachment #2: Re: [PATCH] vmcore: replace Elf64_Ehdr_Elf32_Ehdr with elfhdr.eml --] [-- Type: application/x-extension-eml, Size: 5547 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() 2015-09-21 2:16 ` [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() yjin 2015-09-21 2:16 ` yjin @ 2015-09-21 2:23 ` yjin 2015-09-21 2:23 ` yjin 1 sibling, 1 reply; 4+ messages in thread From: yjin @ 2015-09-21 2:23 UTC (permalink / raw) To: ralf; +Cc: akpm, mhuang, kexec, chaowang, linux-kernel, jinyanjiang, linux-mips It seems the last mail has been blocked, resend it. On 2015年09月21日 10:16, yjin wrote: > The new version patch only modifies mips/elf.h, so add Ralf Baechle > and cc linux-mips@linux-mips.org. > This is a V2 patch, attach the V1 patch for reference. > > Thanks! > Yanjiang > > On 2015年09月18日 15:42, yanjiang.jin@windriver.com wrote: >> From: Yanjiang Jin <yanjiang.jin@windriver.com> >> >> elf_check_arch() will be called both in parse_crash_elf64_headers() >> and parse_crash_elf32_headers(). But in these two functions, the type of >> the parameter ehdr is different: Elf32_Ehdr and Elf64_Ehdr. >> >> Function parse_crash_elf_headers() reads e_ident[EI_CLASS] then >> decides to >> call parse_crash_elf64_headers() or parse_crash_elf32_headers(). >> This happens in run time, not compile time. So compiler will report >> the below warning: >> >> In file included from include/linux/elf.h:4:0, >> from fs/proc/vmcore.c:13: >> fs/proc/vmcore.c: In function 'parse_crash_elf32_headers': >> arch/mips/include/asm/elf.h:258:23: warning: initializatio >> n from incompatible pointer type >> struct elfhdr *__h = (hdr); \ >> ^ >> fs/proc/vmcore.c:1071:4: note: in expansion of macro 'elf_ >> check_arch' >> !elf_check_arch(&ehdr) || >> ^ >> >> Signed-off-by: Yanjiang Jin <yanjiang.jin@windriver.com> >> --- >> arch/mips/include/asm/elf.h | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/arch/mips/include/asm/elf.h b/arch/mips/include/asm/elf.h >> index f19e890..ece490d 100644 >> --- a/arch/mips/include/asm/elf.h >> +++ b/arch/mips/include/asm/elf.h >> @@ -224,7 +224,7 @@ struct mips_elf_abiflags_v0 { >> #define elf_check_arch(hdr) \ >> ({ \ >> int __res = 1; \ >> - struct elfhdr *__h = (hdr); \ >> + struct elfhdr *__h = (struct elfhdr *)(hdr); \ >> \ >> if (__h->e_machine != EM_MIPS) \ >> __res = 0; \ >> @@ -255,7 +255,7 @@ struct mips_elf_abiflags_v0 { >> #define elf_check_arch(hdr) \ >> ({ \ >> int __res = 1; \ >> - struct elfhdr *__h = (hdr); \ >> + struct elfhdr *__h = (struct elfhdr *)(hdr); \ >> \ >> if (__h->e_machine != EM_MIPS) \ >> __res = 0; \ > ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() 2015-09-21 2:23 ` yjin @ 2015-09-21 2:23 ` yjin 0 siblings, 0 replies; 4+ messages in thread From: yjin @ 2015-09-21 2:23 UTC (permalink / raw) To: ralf; +Cc: akpm, mhuang, kexec, chaowang, linux-kernel, jinyanjiang, linux-mips It seems the last mail has been blocked, resend it. On 2015年09月21日 10:16, yjin wrote: > The new version patch only modifies mips/elf.h, so add Ralf Baechle > and cc linux-mips@linux-mips.org. > This is a V2 patch, attach the V1 patch for reference. > > Thanks! > Yanjiang > > On 2015年09月18日 15:42, yanjiang.jin@windriver.com wrote: >> From: Yanjiang Jin <yanjiang.jin@windriver.com> >> >> elf_check_arch() will be called both in parse_crash_elf64_headers() >> and parse_crash_elf32_headers(). But in these two functions, the type of >> the parameter ehdr is different: Elf32_Ehdr and Elf64_Ehdr. >> >> Function parse_crash_elf_headers() reads e_ident[EI_CLASS] then >> decides to >> call parse_crash_elf64_headers() or parse_crash_elf32_headers(). >> This happens in run time, not compile time. So compiler will report >> the below warning: >> >> In file included from include/linux/elf.h:4:0, >> from fs/proc/vmcore.c:13: >> fs/proc/vmcore.c: In function 'parse_crash_elf32_headers': >> arch/mips/include/asm/elf.h:258:23: warning: initializatio >> n from incompatible pointer type >> struct elfhdr *__h = (hdr); \ >> ^ >> fs/proc/vmcore.c:1071:4: note: in expansion of macro 'elf_ >> check_arch' >> !elf_check_arch(&ehdr) || >> ^ >> >> Signed-off-by: Yanjiang Jin <yanjiang.jin@windriver.com> >> --- >> arch/mips/include/asm/elf.h | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/arch/mips/include/asm/elf.h b/arch/mips/include/asm/elf.h >> index f19e890..ece490d 100644 >> --- a/arch/mips/include/asm/elf.h >> +++ b/arch/mips/include/asm/elf.h >> @@ -224,7 +224,7 @@ struct mips_elf_abiflags_v0 { >> #define elf_check_arch(hdr) \ >> ({ \ >> int __res = 1; \ >> - struct elfhdr *__h = (hdr); \ >> + struct elfhdr *__h = (struct elfhdr *)(hdr); \ >> \ >> if (__h->e_machine != EM_MIPS) \ >> __res = 0; \ >> @@ -255,7 +255,7 @@ struct mips_elf_abiflags_v0 { >> #define elf_check_arch(hdr) \ >> ({ \ >> int __res = 1; \ >> - struct elfhdr *__h = (hdr); \ >> + struct elfhdr *__h = (struct elfhdr *)(hdr); \ >> \ >> if (__h->e_machine != EM_MIPS) \ >> __res = 0; \ > ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-09-21 2:23 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1442562171-21307-1-git-send-email-yanjiang.jin@windriver.com>
[not found] ` <1442562171-21307-2-git-send-email-yanjiang.jin@windriver.com>
2015-09-21 2:16 ` [PATCH] mips: vmcore: forced convert 'hdr' in elf_check_arch() yjin
2015-09-21 2:16 ` yjin
2015-09-21 2:23 ` yjin
2015-09-21 2:23 ` yjin
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox