This is the mail archive of the
mailing list for the glibc project.
Re: ldd output for sysinfo DSO
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Roland McGrath <roland at redhat dot com>, libc-alpha at sources dot redhat dot com
- Date: Sat, 11 Oct 2003 15:46:18 +0200
- Subject: Re: ldd output for sysinfo DSO
- References: <20030930151627.GA27429@nevyn.them.org> <200309302045.h8UKjHEL020325@magilla.sf.frob.com> <20031011153922.GA27151@nevyn.them.org>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Sat, Oct 11, 2003 at 11:39:22AM -0400, Daniel Jacobowitz wrote:
> On Tue, Sep 30, 2003 at 01:45:17PM -0700, Roland McGrath wrote:
> > > The leading tab is because of the sysinfo DSO. Its address is in kernel
> > > space, so writev() stops when it sees the pointer, and nothing gets written.
> > It still seems to me that the proper solution to this issue is for the
> > kernel to treat user addresses consistently. That is, what you can access
> > from userland you can access via system calls that use user addresses.
> > > The other sensible alternative is to skip it entirely.
> > This might be wise for unrelated reasons. I don't know what all groks ldd
> > output, but there may well be scripts around that assume that the rhs names
> > a file that can (and should) be found. linux-gate.so.1 refers to no file.
> I see that Roland's changed it not to set l_libname. Now we get:
> drow@nevyn:/big/fsf/glibc% ./elf/ld.so --list --library-path .:rt:linuxthreads:/lib /bin/ls
> linux-gate.so.1 => (0xffffe000)
> librt.so.1 => rt/librt.so.1 (0x40001000)
> libacl.so.1 => /lib/libacl.so.1 (0x40014000)
> libc.so.6 => ./libc.so.6 (0x4001b000)
> libpthread.so.0 => linuxthreads/libpthread.so.0 (0x4014a000)
> /lib/ld-linux.so.2 => ./elf/ld.so (0x80000000)
> libattr.so.1 => /lib/libattr.so.1 (0x4019c000)
I think it should print something that scripts can identify as not a
filename. Say /VIRTUAL/ (a directory cannot be a shared library).