makedumpfile-1.5.7: Compile warnings on archs without get_versiondep_info()
Michael Holzheu
holzheu at linux.vnet.ibm.com
Tue Oct 21 04:35:33 PDT 2014
On Tue, 21 Oct 2014 05:13:37 +0000
Atsushi Kumagai <kumagai-atsushi at mxc.nes.nec.co.jp> wrote:
> Hello Michael,
>
> >I just noticed that makedumpfile-1.5.7 produces warnings
> >on s390x and probably all other archs that have not defined
> >get_versiondep_info():
>
> Thanks for your reporting, does this patch help you ?
Hello Atsushi,
Sorry, the first note was sent by accident...
I had problems applying the patch but after manually adding
the changes I still get the following warning:
elf_info.c: In function 'get_kcore_dump_loads':
elf_info.c:855:27: warning: unused variable 'p' [-Wunused-variable]
struct pt_load_segment *p = &pt_loads[i];
What about the following patch:
---
makedumpfile.h | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
--- a/makedumpfile.h
+++ b/makedumpfile.h
@@ -759,26 +759,28 @@ do { \
/*
* The function of dependence on machine
*/
+static inline int stub_true() { return TRUE; }
+static inline int stub_true_ul(unsigned long x) { return TRUE; }
#ifdef __arm__
int get_phys_base_arm(void);
int get_machdep_info_arm(void);
unsigned long long vaddr_to_paddr_arm(unsigned long vaddr);
#define get_phys_base() get_phys_base_arm()
#define get_machdep_info() get_machdep_info_arm()
-#define get_versiondep_info() TRUE
+#define get_versiondep_info() stub_true()
#define vaddr_to_paddr(X) vaddr_to_paddr_arm(X)
-#define is_vmalloc_addr(X) TRUE
+#define is_vmalloc_addr(X) stub_true_ul(X)
#endif /* arm */
#ifdef __x86__
int get_machdep_info_x86(void);
int get_versiondep_info_x86(void);
unsigned long long vaddr_to_paddr_x86(unsigned long vaddr);
-#define get_phys_base() TRUE
+#define get_phys_base() stub_true()
#define get_machdep_info() get_machdep_info_x86()
#define get_versiondep_info() get_versiondep_info_x86()
#define vaddr_to_paddr(X) vaddr_to_paddr_x86(X)
-#define is_vmalloc_addr(X) TRUE
+#define is_vmalloc_addr(X) stub_true_ul(X)
#endif /* x86 */
#ifdef __x86_64__
@@ -798,31 +800,31 @@ unsigned long long vaddr_to_paddr_x86_64
int get_machdep_info_ppc64(void);
int get_versiondep_info_ppc64(void);
unsigned long long vaddr_to_paddr_ppc64(unsigned long vaddr);
-#define get_phys_base() TRUE
+#define get_phys_base() stub_true()
#define get_machdep_info() get_machdep_info_ppc64()
#define get_versiondep_info() get_versiondep_info_ppc64()
#define vaddr_to_paddr(X) vaddr_to_paddr_ppc64(X)
-#define is_vmalloc_addr(X) TRUE
+#define is_vmalloc_addr(X) stub_true_ul(X)
#endif /* powerpc64 */
#ifdef __powerpc32__ /* powerpc32 */
int get_machdep_info_ppc(void);
unsigned long long vaddr_to_paddr_ppc(unsigned long vaddr);
-#define get_phys_base() TRUE
+#define get_phys_base() stub_true()
#define get_machdep_info() get_machdep_info_ppc()
-#define get_versiondep_info() TRUE
+#define get_versiondep_info() stub_true()
#define vaddr_to_paddr(X) vaddr_to_paddr_ppc(X)
-#define is_vmalloc_addr(X) TRUE
+#define is_vmalloc_addr(X) stub_true_ul(X)
#endif /* powerpc32 */
#ifdef __s390x__ /* s390x */
int get_machdep_info_s390x(void);
unsigned long long vaddr_to_paddr_s390x(unsigned long vaddr);
-#define get_phys_base() TRUE
+#define get_phys_base() stub_true()
#define get_machdep_info() get_machdep_info_s390x()
-#define get_versiondep_info() TRUE
+#define get_versiondep_info() stub_true()
#define vaddr_to_paddr(X) vaddr_to_paddr_s390x(X)
-#define is_vmalloc_addr(X) TRUE
+#define is_vmalloc_addr(X) stub_true_ul(X)
#endif /* s390x */
#ifdef __ia64__ /* ia64 */
@@ -831,10 +833,10 @@ int get_machdep_info_ia64(void);
unsigned long long vaddr_to_paddr_ia64(unsigned long vaddr);
#define get_machdep_info() get_machdep_info_ia64()
#define get_phys_base() get_phys_base_ia64()
-#define get_versiondep_info() TRUE
+#define get_versiondep_info() stub_true()
#define vaddr_to_paddr(X) vaddr_to_paddr_ia64(X)
#define VADDR_REGION(X) (((unsigned long)(X)) >> REGION_SHIFT)
-#define is_vmalloc_addr(X) TRUE
+#define is_vmalloc_addr(X) stub_true_ul(X)
#endif /* ia64 */
typedef unsigned long long mdf_pfn_t;
More information about the kexec
mailing list