Bug 242749

Summary: ldd segfaults on 2.2.5 executables
Product: [Fedora] Fedora Reporter: Tom London <selinux>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED DUPLICATE QA Contact: Brian Brock <bbrock>
Severity: low Docs Contact:
Priority: low    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-06-05 21:35:45 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Ouput of 'strace ldd /usr/bin/vmware-ping' none

Description Tom London 2007-06-05 16:37:37 UTC
Description of problem:
Running rawhide, ldd segfaults on executables distributed with VMWare 6.0
workstation.

E.g:
[root@localhost ~]# ldd /usr/lib/vmware/bin/vmware-vmx
/usr/bin/ldd: line 125:  4199 Segmentation fault      LD_TRACE_LOADED_OBJECTS=1
LD_WARN= LD_BIND_NOW= LD_LIBRARY_VERSION=$verify_out LD_VERBOSE= "$@"
[root@localhost ~]# 

and

[root@localhost ~]# ldd /usr/bin/vmware-ping
/usr/bin/ldd: line 125:  4205 Segmentation fault      LD_TRACE_LOADED_OBJECTS=1
LD_WARN= LD_BIND_NOW= LD_LIBRARY_VERSION=$verify_out LD_VERBOSE= "$@"
[root@localhost ~]# 

Running 'file' on these produces:
[root@localhost ~]# file /usr/lib/vmware/bin/vmware-vmx /usr/bin/vmware-ping
/usr/lib/vmware/bin/vmware-vmx: setuid ELF 32-bit LSB executable, Intel 80386,
version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5,
stripped
/usr/bin/vmware-ping:           setuid ELF 32-bit LSB executable, Intel 80386,
version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5,
stripped
[root@localhost ~]# 

Works fine with more 'recent' executables:
[root@localhost ~]# ldd /bin/mv 
        linux-gate.so.1 =>  (0x00b16000)
        libselinux.so.1 => /lib/libselinux.so.1 (0x46961000)
        libacl.so.1 => /lib/libacl.so.1 (0x46083000)
        libc.so.6 => /lib/libc.so.6 (0x45efb000)
        libdl.so.2 => /lib/libdl.so.2 (0x4607c000)
        libsepol.so.1 => /lib/libsepol.so.1 (0x4697b000)
        /lib/ld-linux.so.2 (0x45edc000)
        libattr.so.1 => /lib/libattr.so.1 (0x47076000)
[root@localhost ~]# 
[root@localhost ~]# file /bin/mv
/bin/mv: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically
linked (uses shared libs), for GNU/Linux 2.6.9, stripped
[root@localhost ~]# 

Attaching output of 'strace ldd /usr/bin/vmware-ping'

Version-Release number of selected component (if applicable):
glibc-common-2.6-3

How reproducible:
Every time

Steps to Reproduce:
1. 
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Tom London 2007-06-05 16:37:37 UTC
Created attachment 156241 [details]
Ouput of 'strace ldd /usr/bin/vmware-ping'

Comment 2 Tom London 2007-06-05 16:44:13 UTC
Uhhh... This only happens is I run 'ldd' as root.

Works fine when I run as 'ordinary' user:

[tbl@localhost ~]$ ldd /usr/bin/vmware-ping
        linux-gate.so.1 =>  (0x00475000)
        libc.so.6 => /lib/libc.so.6 (0x45efb000)
        /lib/ld-linux.so.2 (0x80000000)
[tbl@localhost ~]$ ldd /usr/lib/vmware/bin/vmware-vmx
        linux-gate.so.1 =>  (0x00d93000)
        libm.so.6 => /lib/libm.so.6 (0x46051000)
        libdl.so.2 => /lib/libdl.so.2 (0x4607c000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x46098000)
        libc.so.6 => /lib/libc.so.6 (0x45efb000)
        /lib/ld-linux.so.2 (0x80000000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x46153000)
        libXtst.so.6 => /usr/lib/libXtst.so.6 (0x47285000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x462a5000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x463c4000)
        libz.so.1 => /lib/libz.so.1 (0x45924000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x46257000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x4625c000)
[tbl@localhost ~]$ 


Comment 3 Jakub Jelinek 2007-06-05 16:54:10 UTC
strace on ldd (which is a shell script) is useless, unless you use -f.
Better just
strace -E LD_TRACE_LOADED_OBJECTS=1 /lib/ld-linux.so.2 /usr/bin/vmware-ping


Comment 4 Tom London 2007-06-05 17:02:32 UTC
Argh.  Of course.  Sorry.

But this no longer segfaults:

[root@localhost ~]# LD_TRACE_LOADED_OBJECTS=1 /lib/ld-linux.so.2
/usr/bin/vmware-ping
        linux-gate.so.1 =>  (0x00c3c000)
        libc.so.6 => /lib/libc.so.6 (0x45efb000)
        /lib/ld-linux.so.2 (0x80000000)
[root@localhost ~]# 


Comment 5 Jakub Jelinek 2007-06-05 18:14:02 UTC
Can you then retry with
strace -E LD_WARN= -E LD_BIND_NOW= -E LD_LIBRARY_VERSION=`/lib/ld-linux.so.2
--verify /usr/bin/vmware-ping` -E LD_VERBOSE= /lib/ld-linux.so.2
/usr/bin/vmware-ping
and also
strace -E LD_WARN= -E LD_BIND_NOW= -E LD_LIBRARY_VERSION=`/lib/ld-linux.so.2
--verify /usr/bin/vmware-ping` -E LD_VERBOSE= /usr/bin/vmware-ping
?


Comment 6 Tom London 2007-06-05 18:44:42 UTC
Output of strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2
--verify /usr/bin/vmware-ping` -E LD_VERBOSE= /lib/ld-linux.so.2
/usr/bin/vmware-ping

[root@localhost ~]# strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2
--verify /usr/bin/vmware-ping` -E LD_VERBOSE= /lib/ld-linux.so.2
/usr/bin/vmware-ping
Usage: ld.so [OPTION]... EXECUTABLE-FILE [ARGS-FOR-PROGRAM...]
You have invoked `ld.so', the helper program for shared library executables.
This program usually lives in the file `/lib/ld.so', and special directives
in executable files using ELF shared libraries tell the system's program
loader to load the helper program from this file.  This helper program loads
the shared libraries needed by the program executable, prepares the program
to run, and runs it.  You may invoke this helper program directly from the
command line to load and run an ELF executable file; this is like executing
that file itself, but always uses this helper program from the file you
specified, instead of the helper program file specified in the executable
file you run.  This is mostly of use for maintainers to test new versions
of this helper program; chances are you did not intend to run this program.

  --list                list all dependencies and how they are resolved
  --verify              verify that given object really is a dynamically linked
                        object we can handle
  --library-path PATH   use given PATH instead of content of the environment
                        variable LD_LIBRARY_PATH
  --inhibit-rpath LIST  ignore RUNPATH and RPATH information in object names
                        in LIST
-bash: --verify: command not found
execve("/lib/ld-linux.so.2", ["/lib/ld-linux.so.2", "/usr/bin/vmware-ping"], [/*
24 vars */]) = 0
brk(0)                                  = 0x80571000
open("/usr/bin/vmware-ping", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\2\0\3\0\1\0\0\0`\210\4"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|S_ISUID|0555, st_size=12360, ...}) = 0
mmap2(0x8048000, 12288, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0) = 0x8048000
mmap2(0x804b000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0x804b000
mprotect(0xbf886000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = 0
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fac000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=78121, ...}) = 0
mmap2(NULL, 78121, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f98000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1673760, ...}) = 0
mmap2(0x45efb000, 1390032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x45efb000
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x46049000
mmap2(0x4604c000, 9680, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4604c000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f97000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f976c0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0,
useable:1}) = 0
mprotect(0x46049000, 8192, PROT_READ)   = 0
mprotect(0x8001b000, 4096, PROT_READ)   = 0
munmap(0xb7f98000, 78121)               = 0
write(2, "VMware\'s ping\n\nUsage: /usr/bin/v"..., 445VMware's ping

Usage: /usr/bin/vmware-ping
       <hostname>     : remote host
       [-i <seconds>] : interval (default is 1)
       [-t <seconds>] : timeout (default is 10)
       [-s <bytes>]   : packet payload size (default is 56, min is 1)
       [-q]           : quiet mode
       [-b]           : broadcast mode

Sends one request packet to the remote host every 'interval' seconds
until we get a reply or 'timeout' seconds have elapsed

) = 445
exit_group(3)                           = ?
Process 29613 detached
[root@localhost ~]# 


Comment 7 Tom London 2007-06-05 18:46:19 UTC
Output of strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify /usr/bin/vmware-ping` -E
LD_VERBOSE= /usr/bin/vmware-ping


[root@localhost ~]# strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify /usr/bin/vmware-ping` -E
LD_VERBOSE= /usr/bin/vmware-ping
execve("/usr/bin/vmware-ping", ["/usr/bin/vmware-ping"], [/* 24 vars */]) = 0
brk(0)                                  = 0x908b000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=78121, ...}) = 0
mmap2(NULL, 78121, PROT_READ, MAP_PRIVATE, 3, 0) = 0x305000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1673760, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x549000
mmap2(0x45efb000, 1390032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x45efb000
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x110000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Process 29631 detached
[root@localhost ~]# 


Comment 8 Tom London 2007-06-05 18:48:12 UTC
Rerun of strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify /usr/bin/vmware-ping` -E
LD_VERBOSE= /lib/ld-linux.so.2 /usr/bin/vmware-ping


[root@localhost ~]# strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify /usr/bin/vmware-ping` -E
LD_VERBOSE= /usr/bin/vmware-ping
execve("/usr/bin/vmware-ping", ["/usr/bin/vmware-ping"], [/* 24 vars */]) = 0
brk(0)                                  = 0x908b000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=78121, ...}) = 0
mmap2(NULL, 78121, PROT_READ, MAP_PRIVATE, 3, 0) = 0x305000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1673760, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x549000
mmap2(0x45efb000, 1390032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x45efb000
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x110000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Process 29631 detached
[root@localhost ~]# strace -E LD_WARN= -E LD_BIND_NOW= -E
LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify /usr/bin/vmware-ping` -E
LD_VERBOSE= /lib/ld-linux.so.2 /usr/bin/vmware-pingexecve("/lib/ld-linux.so.2",
["/lib/ld-linux.so.2", "/usr/bin/vmware-ping"], [/* 24 vars */]) = 0
brk(0)                                  = 0x810e2000
open("/usr/bin/vmware-ping", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\2\0\3\0\1\0\0\0`\210\4"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|S_ISUID|0555, st_size=12360, ...}) = 0
mmap2(0x8048000, 12288, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0) = 0x8048000
mmap2(0x804b000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0x804b000
mprotect(0xbf94a000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = 0
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f3b000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=78121, ...}) = 0
mmap2(NULL, 78121, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f27000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1673760, ...}) = 0
mmap2(0x45efb000, 1390032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x45efb000
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x46049000
mmap2(0x4604c000, 9680, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4604c000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f26000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f266c0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0,
useable:1}) = 0
mprotect(0x46049000, 8192, PROT_READ)   = 0
mprotect(0x8001b000, 4096, PROT_READ)   = 0
munmap(0xb7f27000, 78121)               = 0
write(2, "VMware\'s ping\n\nUsage: /usr/bin/v"..., 445VMware's ping

Usage: /usr/bin/vmware-ping
       <hostname>     : remote host
       [-i <seconds>] : interval (default is 1)
       [-t <seconds>] : timeout (default is 10)
       [-s <bytes>]   : packet payload size (default is 56, min is 1)
       [-q]           : quiet mode
       [-b]           : broadcast mode

Sends one request packet to the remote host every 'interval' seconds
until we get a reply or 'timeout' seconds have elapsed

) = 445
exit_group(3)                           = ?
Process 29640 detached
[root@localhost ~]# 


Comment 9 Jakub Jelinek 2007-06-05 18:55:19 UTC
Oops, sorry, -E LD_TRACE_LOADED_OBJECTS=1 is needed among strace options as
well, in both cases.
Also, everything should be on one line, from the above it sounds like
you have a newline between /lib/ld-linux.so.2 and --verify.


Comment 10 Tom London 2007-06-05 21:19:27 UTC
I believe all on one line:

[root@localhost ~]# strace -E LD_TRACE_LOADED_OBJECTS=1 -E LD_WARN= -E
LD_BIND_NOW= -E LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify
/usr/bin/vmware-ping` -E LD_VERBOSE= /lib/ld-linux.so.2 /usr/bin/vmware-ping
execve("/lib/ld-linux.so.2", ["/lib/ld-linux.so.2", "/usr/bin/vmware-ping"], [/*
25 vars */]) = 0
brk(0)                                  = 0x81fc5000
open("/usr/bin/vmware-ping", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\2\0\3\0\1\0\0\0`\210\4"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|S_ISUID|0555, st_size=12360, ...}) = 0
mmap2(0x8048000, 12288, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0) = 0x8048000
mmap2(0x804b000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0x804b000
mprotect(0xbfb41000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = 0
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f58000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=78121, ...}) = 0
mmap2(NULL, 78121, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f44000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1673760, ...}) = 0
mmap2(0x45efb000, 1390032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x45efb000
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x46049000
mmap2(0x4604c000, 9680, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4604c000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f43000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f436c0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0,
useable:1}) = 0
writev(1, [{"\t", 1}, {"linux-gate.so.1", 15}, {" => ", 4}, {"", 0}, {" (0x",
4}, {"00f98000", 8}, {")\n", 2}], 7       linux-gate.so.1 =>  (0x00f98000)
) = 34
writev(1, [{"\t", 1}, {"libc.so.6", 9}, {" => ", 4}, {"/lib/libc.so.6", 14}, {"
(0x", 4}, {"45efb000", 8}, {")\n", 2}], 7       libc.so.6 => /lib/libc.so.6
(0x45efb000)
) = 42
writev(1, [{"\t", 1}, {"/lib/ld-linux.so.2", 18}, {" (0x", 4}, {"80000000", 8},
{")\n", 2}], 5  /lib/ld-linux.so.2 (0x80000000)
) = 33
exit_group(0)                           = ?
Process 30365 detached
[root@localhost ~]# 


Comment 11 Tom London 2007-06-05 21:20:56 UTC
Believe all on one line:

[root@localhost ~]# strace -E LD_TRACE_LOADED_OBJECTS=1 -E LD_WARN= -E
LD_BIND_NOW= -E LD_LIBRARY_VERSION=`/lib/ld-linux.so.2 --verify
/usr/bin/vmware-ping` -E LD_VERBOSE= /usr/bin/vmware-ping
execve("/usr/bin/vmware-ping", ["/usr/bin/vmware-ping"], [/* 25 vars */]) = 0
brk(0)                                  = 0x88eb000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=78121, ...}) = 0
mmap2(NULL, 78121, PROT_READ, MAP_PRIVATE, 3, 0) = 0xfd9000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1673760, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x717000
mmap2(0x45efb000, 1390032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x45efb000
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x110000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Process 30380 detached
[root@localhost ~]# 


Comment 12 Jakub Jelinek 2007-06-05 21:26:34 UTC
mmap2(0x46049000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14e) = 0x110000
This is the bug, the kernel didn't honor MAP_FIXED.
What kernel are you using?
uname -a

Comment 13 Jakub Jelinek 2007-06-05 21:35:45 UTC

*** This bug has been marked as a duplicate of 242612 ***

*** This bug has been marked as a duplicate of 242612 ***