lkml.org 
[lkml]   [2007]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH 01/14] kbuild: make modpost section warnings clearer
On Fri, May 18, 2007 at 08:52:31AM +0200, Jan Engelhardt wrote:
>
> On May 18 2007 08:49, Sam Ravnborg wrote:
> >index 113dc77..acd28ab 100644
> >--- a/scripts/mod/modpost.c
> >+++ b/scripts/mod/modpost.c
> >@@ -885,29 +885,28 @@ static void warn_sec_mismatch(const char *modname, const char *fromsec,
> > return;
> >
> > if (before && after) {
> >- warn("%s - Section mismatch: reference to %s:%s from %s "
> >- "between '%s' (at offset 0x%llx) and '%s'\n",
> >- modname, secname, refsymname, fromsec,
> >+ warn("%s(%s+0x%llx): Section mismatch: reference to %s:%s "
> >+ "(between '%s' and '%s')\n",
> >+ modname, fromsec, (long long)r.r_offset,
> >+ secname, refsymname,
>
> %x always takes unsigned. %llx => (unsigned long long)r.r_offset.
> Ditto below.
>
> > elf->strtab + before->st_name,
> >- (long long)r.r_offset,
> > elf->strtab + after->st_name);
> > } else if (before) {
> >- warn("%s - Section mismatch: reference to %s:%s from %s "
> >- "after '%s' (at offset 0x%llx)\n",
> >- modname, secname, refsymname, fromsec,
> >- elf->strtab + before->st_name,
> >- (long long)r.r_offset);
> >+ warn("%s(%s+0x%llx): Section mismatch: reference to %s:%s "
> >+ "(after '%s')\n",
> >+ modname, fromsec, (long long)r.r_offset,
> >+ secname, refsymname,
> >+ elf->strtab + before->st_name);
> [more occurences]

Thanks, updated patch below.

Sam

From 4dba30ccfdb911b0810f6527de66b1515349d8c4 Mon Sep 17 00:00:00 2001
From: Russell King <rmk+lkml@arm.linux.org.uk>
Date: Thu, 10 May 2007 23:03:25 +0100
Subject: [PATCH 01/14] kbuild: make modpost section warnings clearer

Change modpost section mismatch warnings to be less confusing;
model them on the binutils linker warnings which we all know how
to interpret.

Also, fix the wrong ordering of arguments for the final case -
fromsec and refsymname were reversed.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
---
scripts/mod/modpost.c | 33 ++++++++++++++++-----------------
1 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index 113dc77..acd28ab 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -885,29 +885,28 @@ static void warn_sec_mismatch(const char *modname, const char *fromsec,
return;

if (before && after) {
- warn("%s - Section mismatch: reference to %s:%s from %s "
- "between '%s' (at offset 0x%llx) and '%s'\n",
- modname, secname, refsymname, fromsec,
+ warn("%s(%s+0x%llx): Section mismatch: reference to %s:%s "
+ "(between '%s' and '%s')\n",
+ modname, fromsec, (unsigned long long)r.r_offset,
+ secname, refsymname,
elf->strtab + before->st_name,
- (long long)r.r_offset,
elf->strtab + after->st_name);
} else if (before) {
- warn("%s - Section mismatch: reference to %s:%s from %s "
- "after '%s' (at offset 0x%llx)\n",
- modname, secname, refsymname, fromsec,
- elf->strtab + before->st_name,
- (long long)r.r_offset);
+ warn("%s(%s+0x%llx): Section mismatch: reference to %s:%s "
+ "(after '%s')\n",
+ modname, fromsec, (unsigned long long)r.r_offset,
+ secname, refsymname,
+ elf->strtab + before->st_name);
} else if (after) {
- warn("%s - Section mismatch: reference to %s:%s from %s "
+ warn("%s(%s+0x%llx): Section mismatch: reference to %s:%s "
"before '%s' (at offset -0x%llx)\n",
- modname, secname, refsymname, fromsec,
- elf->strtab + after->st_name,
- (long long)r.r_offset);
+ modname, fromsec, (unsigned long long)r.r_offset,
+ secname, refsymname,
+ elf->strtab + after->st_name);
} else {
- warn("%s - Section mismatch: reference to %s:%s from %s "
- "(offset 0x%llx)\n",
- modname, secname, fromsec, refsymname,
- (long long)r.r_offset);
+ warn("%s(%s+0x%llx): Section mismatch: reference to %s:%s\n",
+ modname, fromsec, (unsigned long long)r.r_offset,
+ secname, refsymname);
}
}

--
1.5.1.rc3.20.gaa453
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-05-18 09:15    [W:0.348 / U:0.056 seconds]
©2003-2011 Jasper Spaans. Advertise on this site