kbuild: reference_discarded addition
authorDave Jones <davej@redhat.com>
Fri, 6 Jan 2006 07:40:19 +0000 (02:40 -0500)
committerSam Ravnborg <sam@mars.ravnborg.org>
Sun, 8 Jan 2006 17:56:51 +0000 (18:56 +0100)
Error: ./fs/quota_v2.o .opd refers to 0000000000000020 R_PPC64_ADDR64    .exit.text

Been carrying this for some time in Red Hat trees.

Keith Ownes <kaos@sgi.com> commented:
For our future {in}sanity, add a comment that this is the ppc .opd
section, not the ia64 .opd section.  ia64 .opd should not point to
discarded sections.

Any idea why ppc .opd points to discarded sections when ia64 does not?
AFAICT no ia64 object has a useful .opd section, they are all empty or
(sometimes) a dummy entry which is 1 byte long.  ia64 .opd data is
built at link time, not compile time.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
scripts/reference_discarded.pl

index c2d54148a91f403eb74b8b81f53a117d7100ef70..4ee6ab2135b30dc0678719f758868d7a2a220e62 100644 (file)
@@ -71,6 +71,11 @@ foreach $object (keys(%object)) {
 # printf("ignoring %d conglomerate(s)\n", $ignore);
 
 # printf("Scanning objects\n");
+
+# Keith Ownes <kaos@sgi.com> commented:
+# For our future {in}sanity, add a comment that this is the ppc .opd
+# section, not the ia64 .opd section.
+# ia64 .opd should not point to discarded sections.
 $errorcount = 0;
 foreach $object (keys(%object)) {
        my $from;
@@ -88,6 +93,7 @@ foreach $object (keys(%object)) {
                    ($from !~ /\.text\.exit$/ &&
                     $from !~ /\.exit\.text$/ &&
                     $from !~ /\.data\.exit$/ &&
+                    $from !~ /\.opd$/ &&
                     $from !~ /\.exit\.data$/ &&
                     $from !~ /\.altinstructions$/ &&
                     $from !~ /\.pdr$/ &&