ldso: fix standalone execution on x86_64 architecture
ldso: fix standalone execution on x86_64 architecture

If the dynamic linker is built with LDSO_STANDALONE_SUPPORT=y, it can
load then run a dynamically linked program when explicitly invoked
from the command line.  This is used for test and prelink purposes,
and also by other tools like PRoot to force the kernel to load the
right ELF interpreter.

This feature is currently broken on x86_64 since the number of command
line arguments (ie. argc) passed from the kernel is an "elf_addr_t"
(64 bit on x86_64), whereas it is read as an "unsigned int" (32 bit on
x86_64).

Ref: https://github.com/cedric-vincent/PRoot/issues/45
Signed-off-by: Cédric VINCENT <3a7b0a36f7dda9a70b2eda21f21f7eeb5430e17d@st.com>
Signed-off-by: Bernhard Reutner-Fischer <ce1ac9e9ad16abccd7821f371ad381197b4768ac@gmail.com>

kraj/uclibc-ng,kraj/uClibc,wbx-github/uclibc-ng,brgl/uclibc-ng,kraj/uclibc-ng,brgl/uclibc-ng,kraj/uclibc-ng,kraj/uclibc-ng,kraj/uClibc,foss-for-synopsys-dwc-arc-processors/uClibc,majek/uclibc-vx32,kraj/uClibc,majek/uclibc-vx32,wbx-github/uclibc-ng,majek/uclibc-vx32,foss-for-synopsys-dwc-arc-processors/uClibc,majek/uclibc-vx32,brgl/uclibc-ng,wbx-github/uclibc-ng,foss-for-synopsys-dwc-arc-processors/uClibc,kraj/uClibc,foss-for-synopsys-dwc-arc-processors/uClibc,wbx-github/uclibc-ng,brgl/uclibc-ng