Age | Commit message (Collapse) | Author |
|
_dl_md_reloc_boot() needs to compute this.
|
|
|
|
this hardware alive is becoming increasingly difficult, and I should heed the
message sent by the three disks which have died on me over the last few days.
Noone sane will mourn these ports anyway. So long, and thanks for the fish.
|
|
They all sound like bad ideas anyway.
ok matthew@ deraadt@
|
|
new SSP logic it additionally protects functions which have their
local addresses taken of, and _dl_boot_bind() gets selected.
We have to go through GOT to reach __guard_local, however it hasn't
been relocated yet. So add boot.c and don't protect everything up
to the point until it has been relocated and no longer needs the
loff adjustment.
OK matthew@. Full build done & tested by florian@.
|
|
|
|
in this one specific area is not going to help debugging, because so
many other parts are non-deterministic.
ok guenthre matthew jsing
|
|
|
|
ABI, and completely remove the code that attempts to call atexit(3) directly.
|
|
using it works, because seeing "make build" fail right after it
installs a broken ld.so is *#!&%(@*)# annoying.
Presumably needs to be fixed for cross-builds.
ok matthew@ deraadt@ miod@
|
|
to clean up a bit.
|
|
Discussion with miod
ok kettenis
|
|
|
|
|
|
conditional in the MI code to only list the architectures left to adapt.
|
|
ABI, and stop calling atexit(4) directly from ld.so on sparc.
|
|
longer call atexit(4) directly on hppa.
|
|
version will match the (upcoming) 32-bit version (for sparc) and allegedly
is slightly faster.
|
|
ABI, and stop calling atexit(4) directly from ld.so on amd64. Note that this
means that binaries built before the middle of november may no longer call
destructors in shared libraries implemented in C++. Update your packages!
ok guenther@
|
|
ABI, and stop calling atexit(4) directly from ld.so on powerpc.
|
|
|
|
from ld.so on alpha. Note that this means that binaries built before early
december may no longer call destructors in shared libraries implemented in
C++. Update your packages!
|
|
ABI, and stop calling atexit(4) directly from ld.so on sparc64
|
|
make it possible to call atexit from dynamically loaded shared objects.
|
|
directly from ld.so on hppa.
|
|
ABI, and stop calling atexit(4) directly from ld.so on i386.
ok guenther@
|
|
prodded by millert
|
|
ok okan kettenis
|
|
prodding from kettenis
|
|
ok deraadt@
|
|
ok guenther
|
|
ok deraadt@
|
|
a2 to zero in the kernel and ld.so. This will let us add the
conditional atexit() call to crt0
ok kettenis@ miod@
|
|
|
|
|
|
members to 64bit types. Assign new syscall numbers for (almost
all) the syscalls that involve the affected types, including anything
with time_t, timeval, itimerval, timespec, rusage, dirent, stat,
or kevent arguments. Add a d_off member to struct dirent and replace
getdirentries() with getdents(), thus immensely simplifying and
accelerating telldir/seekdir. Build perl with -DBIG_TIME.
Bump the major on every single base library: the compat bits included
here are only good enough to make the transition; the T32 compat
option will be burned as soon as we've reached the new world are
are happy with the snapshots for all architectures.
DANGER: ABI incompatibility. Updating to this kernel requires extra
work or you won't be able to login: install a snapshot instead.
Much assistance in fixing userland issues from deraadt@ and tedu@
and build assistance from todd@ and otto@
|
|
While here, do better checks in elf_write_lib() and ansify
elf_sum_reloc()'s decl/def. With input from and ok krw@
|
|
From David Hill dhill at mindcry.org; ok krw@
|
|
to elf(5) instead;
ok miod
|
|
|
|
|
|
error: indirection of non-volatile null pointer will be deleted, not trap [-Werror,-Wnull-dereference]
Suggestion from matthew@
Ok matthew@ miod@
|
|
ok matthew@ millert@
|
|
ok matthew@ kurt@
|
|
whitespace, and no argument names.
ok matthew@ deraadt@
|
|
each plt call, allowing to trace a binary linked against shared library at the
public function call level.
To do so, ltrace(1) sets up some environment variables to enable plt tracing
in ld.so, and invokes ktrace(2) for utrace events. ld.so will force lazy
binding and will send an utrace record in the plt resolver, without updating
the plt.
Minimal filtering capabilities are provided, inspired by Solaris' truss -u,
to limit tracing to libraries and/or symbol names. Non-traced libraries and
symbols will have the regular resolver processing, with the expected plt
update.
"Get it in" deraadt
|
|
when linked against non-pic material (such as linking against libgcc without
passing -fpic or -fPIC on the commandline).
Given the large userland address space (4GB) and random library placement, it
is unlikely that these relocations can ever suceed anyway (DISP26 only allows
for a 256MB offset); _dl_exit() in that case, after printing a warning message.
That's better than dumping core.
|
|
Much assistance and testing by miod
ok miod@
|
|
ok sthen@ jung@ fgsch@
|
|
of the .plt whenever possible, and fallback to the old behaviour of searching
for special symbols pointing to its boundaries. No functional change.
|