Link [ NetBSD | NetBSD OpenGrok source search | PR fulltext-search | Summary of daily snapshot builds | history of daily build result | pkgsrc commit viewer ]


   
        usage: [branch:branch] [user:user] [path@revision] keyword [... [-excludekeyword [...]]] (e.g. branch:MAIN sys/arch/arm, if_wm.c@1.234 )




switch to index mode

recent branches: MAIN (1m)  netbsd-10 (16d)  netbsd-9 (16d)  netbsd-8 (21d) 

2024-06-02 11:46:05 UTC Now

2023-08-04 12:55:48 UTC netbsd-9 commitmail json YAML

src/distrib/sets/lists/debug/mi@1.285.2.1 / diff / nxr@1.285.2.1
src/distrib/sets/lists/debug/shl.mi@1.225.2.4 / diff / nxr@1.225.2.4
src/distrib/sets/lists/tests/mi@1.818.2.2 / diff / nxr@1.818.2.2
src/distrib/sets/lists/tests/shl.mi@1.11.8.1 / diff / nxr@1.11.8.1
src/libexec/ld.elf_so/README.TLS@1.5.2.1 / diff / nxr@1.5.2.1
src/libexec/ld.elf_so/arch/aarch64/mdreloc.c@1.13.2.1 / diff / nxr@1.13.2.1
src/libexec/ld.elf_so/arch/alpha/alpha_reloc.c@1.43.6.1 / diff / nxr@1.43.6.1
src/libexec/ld.elf_so/arch/arm/mdreloc.c@1.44.4.1 / diff / nxr@1.44.4.1
src/libexec/ld.elf_so/arch/hppa/hppa_reloc.c@1.45.6.2 / diff / nxr@1.45.6.2
src/libexec/ld.elf_so/arch/i386/mdreloc.c@1.41.4.1 / diff / nxr@1.41.4.1
src/libexec/ld.elf_so/arch/m68k/mdreloc.c@1.33.6.1 / diff / nxr@1.33.6.1
src/libexec/ld.elf_so/arch/mips/mips_reloc.c@1.72.6.1 / diff / nxr@1.72.6.1
src/libexec/ld.elf_so/arch/or1k/mdreloc.c@1.3.6.1 / diff / nxr@1.3.6.1
src/libexec/ld.elf_so/arch/powerpc/ppc_reloc.c@1.58.2.3 / diff / nxr@1.58.2.3
src/libexec/ld.elf_so/arch/riscv/mdreloc.c@1.5.2.1 / diff / nxr@1.5.2.1
src/libexec/ld.elf_so/arch/sh3/mdreloc.c@1.35.6.1 / diff / nxr@1.35.6.1
src/libexec/ld.elf_so/arch/sparc/mdreloc.c@1.55.4.1 / diff / nxr@1.55.4.1
src/libexec/ld.elf_so/arch/sparc64/mdreloc.c@1.69.4.1 / diff / nxr@1.69.4.1
src/libexec/ld.elf_so/arch/x86_64/mdreloc.c@1.47.4.1 / diff / nxr@1.47.4.1
src/libexec/ld.elf_so/map_object.c@1.60.2.2 / diff / nxr@1.60.2.2
src/libexec/ld.elf_so/rtld.c@1.197.2.7 / diff / nxr@1.197.2.7
src/libexec/ld.elf_so/rtld.h@1.136.2.2 / diff / nxr@1.136.2.2
src/libexec/ld.elf_so/tls.c@1.12.2.2 / diff / nxr@1.12.2.2
src/tests/libexec/ld.elf_so/Makefile@1.10.2.1 / diff / nxr@1.10.2.1
src/tests/libexec/ld.elf_so/helper.mk@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_abuse_dynamic/h_abuse_dynamic.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_abuse_static/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_abuse_static/h_abuse_static.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_def_dynamic/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_def_dynamic/h_def_dynamic.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_def_static/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_def_static/h_def_static.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_dso1/Makefile@1.1.46.1 / diff / nxr@1.1.46.1
src/tests/libexec/ld.elf_so/helper_dso2/Makefile@1.1.46.1 / diff / nxr@1.1.46.1
src/tests/libexec/ld.elf_so/helper_dso3/Makefile@1.1.10.1 / diff / nxr@1.1.10.1
src/tests/libexec/ld.elf_so/helper_ifunc_dso/Makefile@1.1.18.1 / diff / nxr@1.1.18.1
src/tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_onlyctor_dynamic/h_onlyctor_dynamic.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_onlydef/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_onlydef/h_onlydef.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_onlydef_static/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_onlydef_static/h_onlydef_static.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_onlyuse_dynamic/h_onlyuse_dynamic.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_onlyuse_static/h_onlyuse_static.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_symver_dso0/Makefile@1.1.44.1 / diff / nxr@1.1.44.1
src/tests/libexec/ld.elf_so/helper_symver_dso1/Makefile@1.3.28.1 / diff / nxr@1.3.28.1
src/tests/libexec/ld.elf_so/helper_symver_dso2/Makefile@1.3.28.1 / diff / nxr@1.3.28.1
src/tests/libexec/ld.elf_so/helper_use_dynamic/Makefile@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/helper_use_dynamic/h_use_dynamic.c@1.1.4.2 / diff / nxr@1.1.4.2
src/tests/libexec/ld.elf_so/helper_use_static/Makefile@1.3.4.2 / diff / nxr@1.3.4.2
src/tests/libexec/ld.elf_so/helper_use_static/h_use_static.c@1.2.4.2 / diff / nxr@1.2.4.2
src/tests/libexec/ld.elf_so/t_tls_extern.c@1.12.4.2 / diff / nxr@1.12.4.2

Pull up following revision(s), all via patch,
(requested by riastradh in ticket #1699):

distrib/sets/lists/tests/shl.mi: revision 1.14
distrib/sets/lists/tests/shl.mi: revision 1.15
distrib/sets/lists/tests/shl.mi: revision 1.16
tests/libexec/ld.elf_so/helper_def_static/h_def_static.c: revision 1.1
tests/libexec/ld.elf_so/helper_def_dynamic/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_def_dynamic/Makefile: revision 1.2
tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile: revision 1.2
libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.75
distrib/sets/lists/tests/mi: revision 1.1265
libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.36
libexec/ld.elf_so/rtld.c: revision 1.214
tests/libexec/ld.elf_so/helper_onlydef_static/Makefile: revision 1.1
distrib/sets/lists/debug/mi: revision 1.400
tests/libexec/ld.elf_so/helper_onlydef_static/Makefile: revision 1.2
distrib/sets/lists/debug/mi: revision 1.401
distrib/sets/lists/debug/mi: revision 1.402
tests/libexec/ld.elf_so/helper_dso2/Makefile: revision 1.2
distrib/sets/lists/debug/mi: revision 1.403
tests/libexec/ld.elf_so/helper_symver_dso0/Makefile: revision 1.2
libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.48
distrib/sets/lists/debug/mi: revision 1.406
tests/libexec/ld.elf_so/helper_use_dynamic/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_use_dynamic/Makefile: revision 1.2
tests/libexec/ld.elf_so/helper_ifunc_dso/Makefile: revision 1.2
libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.70
libexec/ld.elf_so/arch/aarch64/mdreloc.c: revision 1.18
tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile: revision 1.2
tests/libexec/ld.elf_so/Makefile: revision 1.13
libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.46
libexec/ld.elf_so/rtld.h: revision 1.146
tests/libexec/ld.elf_so/Makefile: revision 1.14
distrib/sets/lists/debug/shl.mi: revision 1.306
tests/libexec/ld.elf_so/Makefile: revision 1.15
tests/libexec/ld.elf_so/helper_abuse_static/Makefile: revision 1.1
distrib/sets/lists/debug/shl.mi: revision 1.307
tests/libexec/ld.elf_so/Makefile: revision 1.16
tests/libexec/ld.elf_so/helper_abuse_static/Makefile: revision 1.2
distrib/sets/lists/debug/shl.mi: revision 1.308
tests/libexec/ld.elf_so/Makefile: revision 1.17
distrib/sets/lists/debug/shl.mi: revision 1.309
tests/libexec/ld.elf_so/Makefile: revision 1.18
tests/libexec/ld.elf_so/Makefile: revision 1.19
libexec/ld.elf_so/tls.c: revision 1.16
libexec/ld.elf_so/tls.c: revision 1.17
libexec/ld.elf_so/tls.c: revision 1.18
libexec/ld.elf_so/tls.c: revision 1.19
tests/libexec/ld.elf_so/helper_onlydef_static/h_onlydef_static.c: revision 1.1
tests/libexec/ld.elf_so/helper_use_static/h_use_static.c: revision 1.1
tests/libexec/ld.elf_so/helper_use_static/h_use_static.c: revision 1.2
tests/libexec/ld.elf_so/helper_def_static/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_def_static/Makefile: revision 1.2
libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.50
distrib/sets/lists/debug/shl.mi: revision 1.310
libexec/ld.elf_so/README.TLS: revision 1.6
distrib/sets/lists/debug/shl.mi: revision 1.311
distrib/sets/lists/debug/shl.mi: revision 1.314
tests/libexec/ld.elf_so/helper_dso3/Makefile: revision 1.2
tests/libexec/ld.elf_so/helper_symver_dso1/Makefile: revision 1.4
libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.63
tests/libexec/ld.elf_so/helper_def_dynamic/h_def_dynamic.c: revision 1.1
tests/libexec/ld.elf_so/helper_onlydef/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_onlydef/Makefile: revision 1.2
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.10
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.11
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.12
libexec/ld.elf_so/map_object.c: revision 1.66
tests/libexec/ld.elf_so/helper.mk: revision 1.1
libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.57
libexec/ld.elf_so/map_object.c: revision 1.67
tests/libexec/ld.elf_so/helper_onlydef/h_onlydef.c: revision 1.1
tests/libexec/ld.elf_so/helper_symver_dso2/Makefile: revision 1.4
tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.2
tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.3
tests/libexec/ld.elf_so/helper_use_dynamic/h_use_dynamic.c: revision 1.1
tests/libexec/ld.elf_so/helper_abuse_static/h_abuse_static.c: revision 1.1
libexec/ld.elf_so/arch/riscv/mdreloc.c: revision 1.9
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.1
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.2
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.3
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.4
tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile: revision 1.1
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.5
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.6
libexec/ld.elf_so/arch/m68k/mdreloc.c: revision 1.34
tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile: revision 1.2
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.7
libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.42
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.8
libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.43
libexec/ld.elf_so/arch/or1k/mdreloc.c: revision 1.4
tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.9
tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile: revision 1.1
tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile: revision 1.2
tests/libexec/ld.elf_so/helper_abuse_dynamic/h_abuse_dynamic.c: revision 1.1
tests/libexec/ld.elf_so/helper_onlyctor_dynamic/h_onlyctor_dynamic.c: revision 1.1
tests/libexec/ld.elf_so/helper_onlyuse_static/h_onlyuse_static.c: revision 1.1
tests/libexec/ld.elf_so/helper_onlyuse_dynamic/h_onlyuse_dynamic.c: revision 1.1
tests/libexec/ld.elf_so/helper_dso1/Makefile: revision 1.2
distrib/sets/lists/tests/shl.mi: revision 1.12
distrib/sets/lists/tests/shl.mi: revision 1.13
libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.44

ld.elf_so: New test for extern initial-exec TLS, PR toolchain/50277.

ld.elf_so: Fix extern TLS test to match PR toolchain/50277.
Now it's actually testing the problem.
ld.elf_so: Nix inadvertently committed private test program.
ld.elf_so: Fix set lists for MKDEBUG=yes builds with t_tls_extern.

ld.elf_so: Sprinkle tls debug messages.

ld.elf_so: Make tls alloc debug messages more detailed and greppable.

ld.elf_so: Test variations on PR toolchain/50277.

ld.elf_so: Test extern dynamic TLS too.

ld.elf_so: Factor out logic in TLS tests to make writing more easier.
No functional change intended.

ld.elf_so: Test TLS abuse of static def, dynamic use and vice versa.

ld.elf_so: Shorter test names.
No functional non-cosmetic change intended.

ld.elf_so: Separately test eager and lazy resolution of def tls ptr.
eager: before loading use library
lazy: after loading use library

Add recent ld.elf_so test helpers debug info
ld.elf_so: Add new files to debug/shl.mi.

ld.elf_so: tls_extern dynamic_defabuse_eager must xfail differently.
If a symbol has already been resolved as dynamic TLS, any library
that tries to use it as static TLS cannot be dlopened.

ld.elf_so: Test another edge case of mismatched TLS models.
One library defines a symbol and _doesn't_ use it, so it has no
indication of whether the symbol is for static TLS or dynamic TLS,
and then two other libraries use it in different ways.

ld.elf_so: Test dynamic-then-static abuse via ctor.

ld.elf_so: Fix missing tab in debug/shl.mi in last change.

Fix interactions of initial-exec TLS model and dlopen

(1) If an initial-exec relocation was used for a non-local symbol
(i.e. the definition of the symbol is in a different DSO), the
computation of the static TLS offset used the wrong DSO.

This would effectively mean the wrong address was computed
(PR toolchain/50277, PR pkg/57445).
Fix this by forcing the computation of the correct DSO (the one defining
the symbol).
This code uses __UNCONST to avoid the vast interface changes for this
special case.

(2) If symbols from a DSO loaded via dlopen are used with both
global-dynamic/local-dynamic and initial-exec relocations AND
a initial-exec relocation was resolved first in a thread, a split brain
situation could exist where the dynamic relocations would use one memory
block (separate allocation) and the initial-exec relocations the static
per-thread TLS space.

(3) If the initial-exec relocation in (2) is seen after any thread has
already used a GD/LD allocation, bail out. Since IE relocations are used
only in the GOT, this will prevent the dlopen. This is a bit more
aggressive than necessary, but a full blown reference counting doesn't
seem to be justified.
Avoid using uninitialized variable "symnum" when building with DEBUG
enabled by borrowing the rdbg_symname() macro from arch/x86_64.
ld.elf_so: Sprinkle more debug messages on dlopen and error.

PR pkg/57445

Fix MKDEBUGLIB build by adding these installed files to the debug
set list.

One could argue that these files are not of any use, so why install
them?  I don't have a good argument either way, and this is (for
now) a simple work-around for PR bin/57455  Please feel free to
commit a different fix to avoid installing these files at all.

Fix markup of libh_ MKDEBUGLIB=yes only files

TLS variant I archs need to fudge the offset by the size of the TCB.
tests/libexec/ld.elf_so: Fix helper library makefiles.
1. Consolidate logic into a single helper.mk to reduce duplication.
2. Set NO* variables, not MK* variables which are reserved for user.
3. Avoid eager X!= in favour of lazy ${X:sh}.
4. Mark _g.a set list entries obsolete.  Never should've been built!
PR misc/57462

(martin)