All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Mika Penttilä" <mika.penttila@kolumbus.fi>
To: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: torvalds@linux-foundation.org, ben.collins@ubuntu.com,
	linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
	sam@ravnborg.org, dwmw2@infradead.org, adobriyan@gmail.com
Subject: Re: [RFC] Crash on modpost, addend_386_rel()
Date: Wed, 23 May 2007 18:23:17 +0300	[thread overview]
Message-ID: <46545C65.3030806@kolumbus.fi> (raw)
In-Reply-To: <20070523.235103.128617660.anemo@mba.ocn.ne.jp>

Atsushi Nemoto wrote:
> On Tue, 22 May 2007 17:48:09 +0300, Mika_Penttilä <mika.penttila@kolumbus.fi> wrote:
>   
>> I can't see how this use of r_attend is going to work. find_elf_symbol
>> compares relsym->st_value to Elf_Rela->r_attend. I think it doesn't work
>> for RELA archs and even with this patch for REL.
>>     
>
> It seems works fine with RELA archs, at least mips64.
>
> For example, set_up_list3s is correctly reported.
>
> WARNING: mm/built-in.o - Section mismatch: reference to .init.text:set_up_list3s from .text between 'kmem_cache_create' (at offset 0x26358) and 'cache_reap'
>
> Here is excerpt from readelf output.  Addend value 0x21d8 matches
> st_value of its target symbol.
>
> $ mips64-linux-readelf -sr ../build-sb1250/mm/built-in.o
> Relocation section '.rela.text' at offset 0x33fe0 contains 5100 entries:
>   Offset          Info           Type           Sym. Value    Sym. Name + Addend
> ...
> 000000026358  000400000004 R_MIPS_26         0000000000000000 .init.text + 21d8
>                     Type2: R_MIPS_NONE
>                     Type3: R_MIPS_NONE
> ...
> Symbol table '.symtab' contains 1652 entries:
>    Num:    Value          Size Type    Bind   Vis      Ndx Name
> ...
>    746: 00000000000021d8   148 FUNC    LOCAL  DEFAULT    4 set_up_list3s
>
> ---
> Atsushi Nemoto
>
>   
So with mips64 you are lucky because the relocation symbol is .init.text 
and hence addend matches  (has to match) symbol's offset. I can't find 
any spec where it is stated that addend == address, maybe it's in mips64 
abi or something. It is quite normal to have addend of 0.

--Mika


  reply	other threads:[~2007-05-23 16:36 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-22  2:01 [RFC] Crash on modpost, addend_386_rel() Ben Collins
2007-05-22  4:40 ` Atsushi Nemoto
2007-05-22  4:52   ` Linus Torvalds
2007-05-22  5:29     ` Atsushi Nemoto
2007-05-22  9:27       ` Atsushi Nemoto
2007-05-22 14:48         ` Mika Penttilä
2007-05-23 14:51           ` Atsushi Nemoto
2007-05-23 15:23             ` Mika Penttilä [this message]
2007-05-23 16:00               ` Atsushi Nemoto
2007-05-22  4:43 ` Sam Ravnborg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46545C65.3030806@kolumbus.fi \
    --to=mika.penttila@kolumbus.fi \
    --cc=adobriyan@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=anemo@mba.ocn.ne.jp \
    --cc=ben.collins@ubuntu.com \
    --cc=dwmw2@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sam@ravnborg.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.