Linux PARISC architecture development
 help / color / mirror / Atom feed
From: Ryan Bradetich <rbradetich@uswest.net>
To: Matthew Wilcox <willy@debian.org>
Cc: parisc-linux@lists.parisc-linux.org
Subject: Re: [parisc-linux] /lib/ld.so.1 (glibc) issues on 2.5 kernel??
Date: 20 Mar 2003 01:15:51 -0700	[thread overview]
Message-ID: <1048148150.19036.11.camel@beavis.ybsoft.com> (raw)
In-Reply-To: <1047972053.19011.14.camel@beavis.ybsoft.com>

Continuing to track this problem down, I have found the
following:

The Problem appears to be that when the 

	NEW_AUX_ENT(AT_ENTRY, exec->e_entry)

is called, it puts in the wrong entry point.

The reason I believe the error manifests itself is because
of this if statment:

  if (*user_entry == (ElfW(Addr)) ENTRY_POINT)

I have tracked down values of the user_entry and ENTRY_POINT:

	user_entry: 41001fb4
	ENTRY_POINT: 41027082

Since they are different, the if statement fails... My belief
is they should be the same when /lib/ld.so.1 is called because
of the following comment inside this if statement:


      /* Ho ho.  We are not the program interpreter!  We are the program
         itself!  This means someone ran ld.so as a command.  Well, that
         might be convenient to do sometimes.  We support it by
         interpreting the args like this:
                                                                                
         ld.so PROGRAM ARGS...
 
         The first argument is the name of a file containing an ELF
         executable we will load and run with the following arguments.
         To simplify life here, PROGRAM is searched for using the
         normal rules for shared objects, rather than $PATH or anything
         like that.  We just load it and use its entry point; we don't
         pay attention to its PT_INTERP command (we are the interpreter
         ourselves).  This is an easy way to test a new ld.so before
         installing it.  */



to me there looks like two things that could be wrong:

1.  The exec->e_entry needs to be fixed in the kernel, so it matches
    the _start of the library.

2.  The ENTRY_POINT needs to be changed in glibc for parisc-linux.


ia64 seems to be the only arch that changes the value of ENTRY_POINT,
so this doesn't seem likely...

./glibc-2.3.1/sysdeps/generic/entry.h:#define ENTRY_POINT _start
./glibc-2.3.1/sysdeps/ia64/elf/entry.h:#define ENTRY_POINT (((long int
*) _start)[0])



I am planning to pursue option 1 unless someone thinks option 2 is the
correct option to pursue.


Thanks,

- Ryan


-- 
Ryan Bradetich <rbradetich@uswest.net>

  reply	other threads:[~2003-03-20  8:15 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-17 16:19 [parisc-linux] /lib/ld.so.1 (glibc) issues on 2.5 kernel?? Ryan Bradetich
2003-03-17 16:32 ` Matthew Wilcox
2003-03-17 16:50   ` Ryan Bradetich
2003-03-18  7:20     ` Ryan Bradetich
2003-03-20  8:15       ` Ryan Bradetich [this message]
2003-03-20 14:14         ` Carlos O'Donell

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=1048148150.19036.11.camel@beavis.ybsoft.com \
    --to=rbradetich@uswest.net \
    --cc=parisc-linux@lists.parisc-linux.org \
    --cc=willy@debian.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox