public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Richard Henderson <rth@twiddle.net>
To: rusty@rustcorp.com.au
Cc: Richard Henderson <rth@twiddle.net>, linux-kernel@vger.kernel.org
Subject: in-kernel linking issues
Date: Thu, 14 Nov 2002 14:37:01 -0800	[thread overview]
Message-ID: <20021114143701.A30355@twiddle.net> (raw)

So you said you had a userland test harness?

Some problems I've seen browsing the code:

 (1) You make no provision for sections to be loaded in any order
      except the order they appear in the object file.  This is bad.
      You *really* need to replicate something akin to obj_load_order_prio
      from the 2.4 modutils, lest small data sections be placed incorrectly
      wrt the GOT section.

 (2) I see no provision for small COMMON symbols to be placed in the
      .sbss section rather than in the .bss section.  Unless you are
      sorting your allocation of COMMON symbols by size, which I also
      don't see, this can result in link errors due to SCOMMON symbols
      not being reachable from the GP.

 These will affect at least Alpha, IA-64, and MIPS.

 (3) Alpha and MIPS64 absolutely require that the core and init allocations
     are "close" (within 2GB).  I don't see how this can be guaranteed with
     two different vmalloc calls.

     Allocating the two together would also allow us to only have
     one flush_icache_range call.  Not that I consider module
     loading particularly performance critical, but it'd be nice.


That's all I can think of at the moment.


r~

             reply	other threads:[~2002-11-14 22:30 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-14 22:37 Richard Henderson [this message]
2002-11-16  5:47 ` in-kernel linking issues Rusty Russell
2002-11-16 22:51   ` Richard Henderson
     [not found]     ` <20021117130132.AA5352C058@lists.samba.org>
2002-11-17 20:59       ` Richard Henderson
     [not found] <20021114143701.A30355@twiddle.net.suse.lists.linux.kernel>
2002-11-15  4:13 ` Andi Kleen
2002-11-15  4:21   ` Richard Henderson
2002-11-15  8:44   ` Rusty Russell
2002-11-15 10:29     ` Andi Kleen
2002-11-15 12:51     ` Richard Henderson
2002-11-15 13:16       ` Russell King
2002-11-15 22:30         ` Richard Henderson
2002-11-15 21:21       ` Rusty Russell
2002-11-15 22:22         ` Richard Henderson
2002-11-15 22:45           ` Rusty Russell
2002-11-15 23:47             ` Richard Henderson
2002-11-16  6:19               ` Rusty Russell
2002-11-18 16:46       ` Kai Germaschewski
2002-11-19  6:26         ` Rusty Russell

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=20021114143701.A30355@twiddle.net \
    --to=rth@twiddle.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rusty@rustcorp.com.au \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox