OSDN Git Service
Eric Andersen [Fri, 8 Oct 2004 07:58:30 +0000 (07:58 -0000)]
As noticed by egor duda, current_menu is declared as 'extern struct menu
*current_menu;' in scripts/config/lkc.h line 63, and this conflicts with
static definition in mconf.c.
Joakim Tjernlund [Thu, 7 Oct 2004 18:57:40 +0000 (18:57 -0000)]
Remove _dl_parse_copy_information() for CRIS per Peter Kjellerstedts request.
Eric Andersen [Thu, 7 Oct 2004 14:06:06 +0000 (14:06 -0000)]
Put back ucontext.h, but omit function prototypes for getcontext(),
makecontext(), setcontext(), and swapcontext() which are marked as
obsolescent by SuSv3, and are not implemented by uClibc.
Joakim Tjernlund [Thu, 7 Oct 2004 13:48:21 +0000 (13:48 -0000)]
Remove usage of _dl_parse_copy_information() from generic code.
Remove definition of _dl_parse_copy_information() for powerpc.
Remaining archs can do the same.
Make debugging output of "relocation processing: xxx" a bit more sane.
Eric Andersen [Thu, 7 Oct 2004 09:20:09 +0000 (09:20 -0000)]
Add ualarm.c
Eric Andersen [Thu, 7 Oct 2004 03:01:54 +0000 (03:01 -0000)]
Hide a bunch of unimplemented time function prototypes, and
mark them as mjn3's problem. :-)
Eric Andersen [Thu, 7 Oct 2004 02:45:58 +0000 (02:45 -0000)]
Remove ucontext.h. We do not implement any of these functions.
Eric Andersen [Thu, 7 Oct 2004 02:42:34 +0000 (02:42 -0000)]
Remove unimplemented non-SuSv3 function prototypes
Eric Andersen [Thu, 7 Oct 2004 02:18:56 +0000 (02:18 -0000)]
implement SuSv3 required ualarm()
Eric Andersen [Thu, 7 Oct 2004 01:53:04 +0000 (01:53 -0000)]
uClibc does not support getutent_r, getutid_r, and getutline_r,
and SuSv3 does not require r specify them. So kill the prototypes.
Eric Andersen [Wed, 6 Oct 2004 19:13:06 +0000 (19:13 -0000)]
Remove empty file
Joakim Tjernlund [Wed, 6 Oct 2004 13:23:13 +0000 (13:23 -0000)]
Peter S. Mazinger writes:
Corrects libpthread_db name (I do not know why libpthread_db.so uses
libpthread_db.so.1 instead of libpthread_db.so.$(MAJOR_VERSION) as soname)
Note by Jocke:
I don't known either but until then this is the right thing to do.
Joakim Tjernlund [Wed, 6 Oct 2004 13:08:47 +0000 (13:08 -0000)]
Don't complain if ld.so.cache is missing.
Joakim Tjernlund [Wed, 6 Oct 2004 12:51:12 +0000 (12:51 -0000)]
Add type libc0 to cache_print().
Always strip trailing slaches(/) from paths read from ld.so.conf.
Joakim Tjernlund [Wed, 6 Oct 2004 11:45:22 +0000 (11:45 -0000)]
Peter S. Mazinger writes:
The attached patches make iconv use XXFLAGS and adapts ldd.host to cvs.
Joakim Tjernlund [Wed, 6 Oct 2004 11:34:32 +0000 (11:34 -0000)]
Peter S. Mazinger writes:
Hello!
Here is the modified unsecvars patch that applies to cvs.
Joakim Tjernlund [Wed, 6 Oct 2004 07:34:17 +0000 (07:34 -0000)]
Puts common defines into dl-defs.h (in ldso/include) from dl-elf.h and
dl-cache.h and make use of it. Also disables the lib-path-redundancy check
for the case the cache is not used. Makes use of _PRELOAD_FILE_SUPPORT.
From Peter Mazinger.
Joakim Tjernlund [Wed, 6 Oct 2004 06:59:57 +0000 (06:59 -0000)]
Remove unneeded -D<somedefine>, and use instead #ifdef __somedefine__
From Peter Mazinger.
Joakim Tjernlund [Wed, 6 Oct 2004 06:51:37 +0000 (06:51 -0000)]
PIE option correction for Config.in. From Peter Mazinger.
Joakim Tjernlund [Tue, 5 Oct 2004 12:06:40 +0000 (12:06 -0000)]
Peter S. Mazinger writes:
Hello!
The attached patches remove unneeded -D<somedefine>, and uses instead
#ifdef __somedefine__
Joakim Tjernlund [Tue, 5 Oct 2004 11:51:59 +0000 (11:51 -0000)]
Peter Kjellerstedt writes:
After the addition of a configuration option for
enabling the support of /etc/ld.so.cache, I thought
it might be a good idea to add one for the support
of the /etc/ld.so.preload file too. So here it is.
While doing this, I also noticed that the dynamic
linker would hang indefinitely if either LD_PRELOAD
or /etc/ld.so.preload contained a library which was
already loaded, so I made a patch for that too.
And of course, I could not resist from doing a little
clean up of comments and indentation, so here is a
patch for that too.
Eric Andersen [Sun, 3 Oct 2004 07:53:52 +0000 (07:53 -0000)]
This patch from Mike Frysinger, extended from an earlier patch from Peter S.
Mazinger implements the changes suggested by me on the uclibc list.
On Tuesday 28 September 2004 02:24 pm, Erik Andersen wrote:
> What I think should be done is
>
> *) Someone that cares about USE_CACHE should fix that option
> up to be sure it works, and give it a proper config entry
> in extra/Configs/Config.in, and rename it to something
> more appropriate such as LDSO_CACHE_SUPPORT.
>
> *) When LDSO_CACHE_SUPPORT=n, UCLIBC_RUNTIME_PREFIX /usr/X11R6/lib
> should be included in the default library search path in
> dl-elf.c, ldd, and ldconfig.
>
> *) When LDSO_CACHE_SUPPORT=y, UCLIBC_RUNTIME_PREFIX /usr/X11R6/lib
> should be excluded from the default library search path in
> dl-elf.c, ldd, and ldconfig, and those wishing to include
> X11 stuff should add that into /etc/ld.so.conf and re-run
> ldconfig.
>
> *) At present, LDSO_CONF and LDSO_CACHE use the same names
> and same structure as glibc. This precludes
> LDSO_CACHE_SUPPORT being uses in any sane fashion on a
> dial glibc and uClibc system. Just as it was necessary
> for use to use a different name for 'libuClibc' rather
> than 'libc', and 'ld-uClibc.so.0' rather than
> 'ld-linux.so.2' it seems that these configuration files
> really ought to be given different names.
>
Joakim Tjernlund [Tue, 28 Sep 2004 13:13:44 +0000 (13:13 -0000)]
Atsushi Nemoto writes:
Hi. I found a mismatch between uClibc and kernel in semctl definition.
In uClibc/libc/misc/sysvipc/sem.c:
static inline _syscall4(int, __semctl, int, semid, int, semnum, int, cmd, union semun *, arg);
...
int semctl(int semid, int semnum, int cmd, ...)
...
arg = va_arg (ap, union semun);
...
return __semctl(semid, semnum, cmd, &arg);
But kernel's semctl is:
asmlinkage long sys_semctl (int semid, int semnum, int cmd, union semun arg)
The last argument is an union semun itself, not a pointer to the
union.
Here is a patch.
Joakim Tjernlund [Tue, 28 Sep 2004 08:55:06 +0000 (08:55 -0000)]
Oops, typo.
Thanks to Peter Kjellerstedt.
Joakim Tjernlund [Tue, 28 Sep 2004 07:56:49 +0000 (07:56 -0000)]
Remove /usr/X11R6/lib from search path.
Search in UCLIBC_RUNTIME_PREFIX"lib" before
UCLIBC_RUNTIME_PREFIX"usr/lib".
X11 users should enable USE_CACHE in Rules.mak, add
/usr/X11R6/lib to /etc/ld.so.conf and run ldconfig.
Joakim Tjernlund [Tue, 28 Sep 2004 07:29:13 +0000 (07:29 -0000)]
Make ldd work for ET_DYN executables. From Peter Mazinger.
Joakim Tjernlund [Mon, 27 Sep 2004 09:40:55 +0000 (09:40 -0000)]
Remove /usr/X11R6/lib from default list.
Move /lib and /usr/lib first in ld.so.cache.
Ignore duplicate /lib and /usr/lib in ld.so.conf
Joakim Tjernlund [Thu, 23 Sep 2004 07:23:26 +0000 (07:23 -0000)]
Add bswap_64 macro and uClibc_page.h. From Peter Kjellerstedt.
Joakim Tjernlund [Thu, 23 Sep 2004 07:15:24 +0000 (07:15 -0000)]
Don't allow undefined global symbols to pass.
Move COPY relocs back to _dl_do_reloc().
White space cleanup.
Joakim Tjernlund [Thu, 23 Sep 2004 07:08:41 +0000 (07:08 -0000)]
White space and printouts cleanup. From Peter Kjellerstedt.
Joakim Tjernlund [Thu, 23 Sep 2004 07:05:40 +0000 (07:05 -0000)]
Make do_rem() safe. From Peter Kjellerstedt.
Joakim Tjernlund [Thu, 23 Sep 2004 07:00:45 +0000 (07:00 -0000)]
Don't allow undefined global symbols to pass.
Move COPY relocs back to _dl_do_reloc().
Joakim Tjernlund [Thu, 23 Sep 2004 06:56:59 +0000 (06:56 -0000)]
Make powerpc look more like the other archs.
Joakim Tjernlund [Fri, 17 Sep 2004 15:57:21 +0000 (15:57 -0000)]
Added back dl_iterate_phdr in ldso(with some small changes).
Someone needs to test if it works to build and run gcj.
Joakim Tjernlund [Fri, 17 Sep 2004 12:41:36 +0000 (12:41 -0000)]
Formatting cleanups from Peter Kellerstedt.
Joakim Tjernlund [Fri, 17 Sep 2004 12:19:35 +0000 (12:19 -0000)]
Bugfix: Add r_addend to final address. The r_addend is mostly zero
but can be nonzero for JMP relocs as well.
All Rela arches need to do this, test and send a patch :)
Remove unneeded test in R_PPC_COPY.
Joakim Tjernlund [Fri, 17 Sep 2004 09:11:53 +0000 (09:11 -0000)]
Don't allow undefined global symbols to pass(all archs needs fixing,
but powerpc).
If you are using buildroot and soft floating point, you may have to
rebuild the libm.so library, copy it to staging_dir/lib and rebuild
your application.
Move handling of R_386_COPY back into _dl_do_reloc(all archs should
do this). Adjust the first argument to _dl_memcpy as it looks wrong
to have symtab[symtab_index].st_value as destination for the mem copy.
Joakim Tjernlund [Thu, 16 Sep 2004 13:07:01 +0000 (13:07 -0000)]
Don't allow undefined global symbols to pass(all archs needs fixing).
If you are using buildroot and soft floating point, you may have to
rebuild the libm.so library, copy it to staging_dir/lib and rebuild
your application.
Cleanups as well.
Manuel Novoa III [Fri, 10 Sep 2004 21:30:26 +0000 (21:30 -0000)]
Hide some x86-specific devel asserts.
Eric Andersen [Wed, 8 Sep 2004 20:13:05 +0000 (20:13 -0000)]
Fixup URL
Joakim Tjernlund [Wed, 8 Sep 2004 09:43:25 +0000 (09:43 -0000)]
Second attempt to fix the INIT/FINI order. This time I think I got it right :)
This needs testing with apps that have complex dependencies.
Eric Andersen [Wed, 8 Sep 2004 03:07:17 +0000 (03:07 -0000)]
Doh! As noted by Mike Frysinger I was too agressive at culling stuff
Eric Andersen [Tue, 7 Sep 2004 11:24:45 +0000 (11:24 -0000)]
Disable prototypes for unimplemented functions
Eric Andersen [Tue, 7 Sep 2004 11:13:06 +0000 (11:13 -0000)]
Yet another bit of joy for mjn3
Eric Andersen [Tue, 7 Sep 2004 10:37:36 +0000 (10:37 -0000)]
Audit and disable unimplemented stuff
Eric Andersen [Tue, 7 Sep 2004 10:34:35 +0000 (10:34 -0000)]
Implement gethostent_r
Eric Andersen [Tue, 7 Sep 2004 10:34:09 +0000 (10:34 -0000)]
Remove stale leftovers
Eric Andersen [Tue, 7 Sep 2004 09:17:17 +0000 (09:17 -0000)]
Audit and scrub malloc.h, which was a mess
Eric Andersen [Tue, 7 Sep 2004 09:04:01 +0000 (09:04 -0000)]
We do not use dl_iterate_phdr, so no need to define it
Eric Andersen [Tue, 7 Sep 2004 08:53:33 +0000 (08:53 -0000)]
uClibc gettext support is under development and really shouldn't
be used by the unsuspecting masses quite yet.
Eric Andersen [Tue, 7 Sep 2004 08:44:19 +0000 (08:44 -0000)]
The 'Somebody Else's Problem Field' was just activated
Eric Andersen [Tue, 7 Sep 2004 08:40:43 +0000 (08:40 -0000)]
First pass prototype removals from auditing header files:
a.out.h to libgen.h (omitting complex.h for a later separate
effort for the math stuff)
Eric Andersen [Tue, 7 Sep 2004 08:36:25 +0000 (08:36 -0000)]
Use a more appealing name, matching the function prototype
Eric Andersen [Tue, 7 Sep 2004 08:30:56 +0000 (08:30 -0000)]
Add missing imaxdiv and lldiv needed for SuSv3. Adjust ldiv to
match glibc's quotient truncation behavior.
Joakim Tjernlund [Fri, 3 Sep 2004 21:17:10 +0000 (21:17 -0000)]
First attempt to fix the INIT/FINI ordering. Fingers crossed :)
Manuel Novoa III [Thu, 2 Sep 2004 14:39:38 +0000 (14:39 -0000)]
Add a couple of mips-specific string funcs.
Port the generic optimized string funcs from glibc, with some tweaks
to cut their size a little. The main change is making memmove
call memcpy for forward copying to trim redundant code.
Make use of both the generic and arch-specific speed-optimized string
funcs configurable. Arch-specific take precedence over generic,
and generic takes precedence over basic size-optimized uClibc funcs.
Manuel Novoa III [Thu, 2 Sep 2004 14:34:53 +0000 (14:34 -0000)]
Fix a couple of symbol name issues.
Joakim Tjernlund [Thu, 2 Sep 2004 07:12:10 +0000 (07:12 -0000)]
Remove unused variables. From Peter Mazinger.
Eric Andersen [Tue, 31 Aug 2004 08:49:06 +0000 (08:49 -0000)]
Restore item I erronenously removed, mention mips string funcs
Eric Andersen [Tue, 31 Aug 2004 08:45:03 +0000 (08:45 -0000)]
Dont mess with __curbrk in ldso
Joakim Tjernlund [Mon, 30 Aug 2004 11:37:47 +0000 (11:37 -0000)]
Typo fix from Peter Mazinger.
Eric Andersen [Mon, 30 Aug 2004 07:40:15 +0000 (07:40 -0000)]
Mention kernel abi selection
Manuel Novoa III [Sat, 28 Aug 2004 21:09:16 +0000 (21:09 -0000)]
solar asked that this bit be reverted.
Joakim Tjernlund [Fri, 27 Aug 2004 15:14:55 +0000 (15:14 -0000)]
Preliminary PIE support for powerpc, i386 was used as template.
Requested by Peter Mazinger. Testing wanted.
Joakim Tjernlund [Fri, 27 Aug 2004 11:08:35 +0000 (11:08 -0000)]
#include "dl-startup.c into ldso.c, making ldso one compilation unit.
Now all functions and vaiables can be made static to reduce relocs.
Basicly, all variables should be merged into one struct variable
and then export that struct. Exported functions should be exported
as functions pointers in the above struct. This will reduce the
number of relocs inside ldso to a handful.
Add -Bsymbolic to linker for ldso. This will resolve all functions
(all JMP_SLOT goes away) and the remaining relocs are transformed into
RELATIVE relocs.
Joakim Tjernlund [Fri, 27 Aug 2004 09:15:11 +0000 (09:15 -0000)]
Forgot to commit this file. Patch from Stefan Allius.
Joakim Tjernlund [Fri, 27 Aug 2004 08:46:19 +0000 (08:46 -0000)]
As Mike Frysinger notes, this code is still needed. I
misread this code and removed it, sorry.
I printed the values of _dl_brkp and _dl_envp in ldso and
got this when executing:
ls:
__curbrk: 0x300c16e0
__environ: 0x1008372c
ldd:
__curbrk: 0x300776e0
__environ: 0x3007759c
why is__environ in the app when executing ls but not ldd?
Eric Andersen [Thu, 26 Aug 2004 23:39:02 +0000 (23:39 -0000)]
Partial patch from Alexandre Oliva to update the frv port
Eric Andersen [Thu, 26 Aug 2004 23:37:48 +0000 (23:37 -0000)]
Patch from Alexandre Oliva to update the frv default config
Eric Andersen [Thu, 26 Aug 2004 23:36:04 +0000 (23:36 -0000)]
Partial patch from Alexandre Oliva:
- adjust licensing terms of sources for crt*.o
- change the stat ABI to speed it up, matching changes in the kernel
- assorted bug-fixes, improvements and updates in the FR-V port
etc.
Eric Andersen [Thu, 26 Aug 2004 22:08:19 +0000 (22:08 -0000)]
Mention FunctionCheck
Eric Andersen [Thu, 26 Aug 2004 22:07:56 +0000 (22:07 -0000)]
Update TODO list a bit
Eric Andersen [Thu, 26 Aug 2004 20:43:25 +0000 (20:43 -0000)]
Only print debug stuff when asked
Eric Andersen [Thu, 26 Aug 2004 18:38:19 +0000 (18:38 -0000)]
Fixup a couple of warnings
Eric Andersen [Thu, 26 Aug 2004 18:36:23 +0000 (18:36 -0000)]
Avoid multiple passes to perform mips GOT relocations, and do
the whole lot in a single pass.
-Erik
Manuel Novoa III [Thu, 26 Aug 2004 17:03:09 +0000 (17:03 -0000)]
Fixes from gentoo.
Joakim Tjernlund [Thu, 26 Aug 2004 14:17:10 +0000 (14:17 -0000)]
Let ldso find libc's malloc function and set _dl_malloc_function.
This removes some crap in libdl.c(and future libs which needs
to access ldso functions).
What do you think?
Joakim Tjernlund [Thu, 26 Aug 2004 14:00:04 +0000 (14:00 -0000)]
Added test for RTLD_GLOBAL flag in _dl_find_hash().
Fixed a bug in libdl.c where the RTLD_GLOBAL was assigned
wronly.
Eric Andersen [Thu, 26 Aug 2004 11:30:48 +0000 (11:30 -0000)]
Relocations of the application's global GOT entries were not being run, and
only the global GOT entry relocations for the loaded shared libs were being
handled. This made applications segfault when using un-fixedup symbols. After
many hours debugging to track down the problem, this patch makes the mips port
happy again.
-Erik
Joakim Tjernlund [Thu, 26 Aug 2004 09:40:09 +0000 (09:40 -0000)]
Stefan Allius writes:
"I fixed the _dl_parse_copy_information in the same way than for the
powerpc and it works fine for me.
You may luck at the patch for the powerpc/elfinterp.c, where I change
the paramter of a dl_dprintf statement. Now we use the same
parameters than for the relocation copy."
Arch mantainers, please do the same.
When all arches has been fixed, we can remove of _dl_parse_copy_information,
it is just a waste of CPU cycles.
Eric Andersen [Wed, 25 Aug 2004 23:46:46 +0000 (23:46 -0000)]
Mike Frysinger writes:
this was sent earlier in a different form:
http://www.uclibc.org/lists/uclibc/2004-January/008136.html
find attached a smaller version ... perhaps adding a fprintf to stderr before
calling abort would be nice like in the glibc patch, but whatever
glibc has since adopted a similar fix for their malloc (third hunk, line 1970)
http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/malloc/malloc.c.diff?r1=1.121&r2=1.122&cvsroot=glibc&f=h
-mike
Eric Andersen [Wed, 25 Aug 2004 23:42:46 +0000 (23:42 -0000)]
Mike Frysinger writes:
i sent this earlier but perhaps people missed it the first time around :)
http://www.uclibc.org/lists/uclibc/2004-August/009544.html
basically if you try to #include <sys/ucontext.h> on arm it'll fail because
ucontext.h utilizes typedefs found in bits/sigcontext.h ... i386 already has
this fix in uClibc
find attached a trivial patch to fix this
-mike
Eric Andersen [Wed, 25 Aug 2004 23:10:43 +0000 (23:10 -0000)]
Joakim Tjernlund writes:
Hi Manuel & Erik
I think I know why MIPS is broken. _dl_perform_mips_global_got_relocations() is
broken. It will due to my latest changes reloctate ldso. This
function needs to die and its job should be done inside _dl_parse_relocation_information().
It is mostly a copy and paste job,
Also PERFORM_BOOTSTRAP_GOT and PERFORM_BOOTSTRAP_RELOCATION should be fixed, they
use symbols which aren't passed as arguments.
Jocke
Manuel Novoa III [Wed, 25 Aug 2004 17:24:19 +0000 (17:24 -0000)]
Patch by Carl SHAW <carl.shaw@st.com>...
Below is a patch to make the pread and pwrite calls work on the SH
architecture. I've only tested this on the SH4 with a 2.4.24 kernel - a
fairly recent kernel is required as the problem is partially fixed in
the kernel itself. For more information (in relation to glibc, but the
problem is the same) see the thread at
http://sourceforge.net/mailarchive/message.php?msg_id=
2375908
Someone should really test this on the SH2/3...
Joakim Tjernlund [Wed, 25 Aug 2004 15:19:00 +0000 (15:19 -0000)]
Patch from Stefan Allius:
Remove unused function parameter in ldso.
Remove echo option '-e' since it is not supported on Solaris.
Joakim Tjernlund [Wed, 25 Aug 2004 14:22:05 +0000 (14:22 -0000)]
Hopefully fix Laszlo and Jacobs dlopen problem.
Eric Andersen [Mon, 23 Aug 2004 20:09:15 +0000 (20:09 -0000)]
Note a security item for the next release
Eric Andersen [Sun, 22 Aug 2004 06:04:57 +0000 (06:04 -0000)]
Make the stub profiling stuff work
Eric Andersen [Sat, 21 Aug 2004 21:42:51 +0000 (21:42 -0000)]
The "Delete current profiling code because it is complete crap"
TODO item is now done.
Eric Andersen [Sat, 21 Aug 2004 21:39:51 +0000 (21:39 -0000)]
Attempt to support 'gcc -finstrument-functions', which seems much
more sane than 'gcc -pg' and seems much easier to support.
-Erik
Eric Andersen [Sat, 21 Aug 2004 21:19:29 +0000 (21:19 -0000)]
Kill off all support for 'gcc -pg' / 'gprof' style profiling. There is both a
size and performance penalty to profiling applications this way, as well as
Heisenberg effects, where the act of measuring changes what is measured.
There are better tools for doing profiling, such as OProfile, that do not
require gcc to instrument the application code.
-Erik
Eric Andersen [Fri, 20 Aug 2004 20:46:01 +0000 (20:46 -0000)]
Enable only for architectures where __NR_madvise is defined
-Erik
Eric Andersen [Thu, 19 Aug 2004 23:04:26 +0000 (23:04 -0000)]
Never directly include kernel sources
Eric Andersen [Thu, 19 Aug 2004 20:21:26 +0000 (20:21 -0000)]
'pagesize' was local to dl-startup.c. In ldso.c we need
to use '_dl_pagesize'
-Erik
Manuel Novoa III [Thu, 19 Aug 2004 16:44:19 +0000 (16:44 -0000)]
Fix dependencies.
Joakim Tjernlund [Thu, 19 Aug 2004 09:52:27 +0000 (09:52 -0000)]
Accunt for ELF_MACHINE_PLTREL_OVERLAP when relocating ldso.
Joakim Tjernlund [Thu, 19 Aug 2004 09:34:11 +0000 (09:34 -0000)]
Remove poor man's malloc. Not needed anymore.
Joakim Tjernlund [Thu, 19 Aug 2004 09:06:15 +0000 (09:06 -0000)]
Move "debug_addr" ptr from dl-startup.c to ldso.c
Joakim Tjernlund [Thu, 19 Aug 2004 08:53:29 +0000 (08:53 -0000)]
Move the app specific stuff from dl-startup.c to ldso.c.
Joakim Tjernlund [Thu, 19 Aug 2004 08:08:27 +0000 (08:08 -0000)]
Oops, forgot to remove unused variable.