History log of /bionic/linker/ (Results 1 – 25 of 1339)
Revision (<<< Hide revision tags) (Show revision tags >>>)Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
Revision tags: android-11.0.0_r8, android-11.0.0_r7, m/android-11.0.0_r8, android-vts-10.0_r5, android-vts-11.0_r1, android-security-11.0.0_r1, android-platform-11.0.0_r1, android-cts-11.0_r1, android-11.0.0_r5, android-11.0.0_r4, android-11.0.0_r3, android-11.0.0_r2, android-11.0.0_r1, platform-tools-30.0.4, android-mainline-11.0.0_r2, android-r-beta-3, android-r-beta-2, android-mainline-11.0.0_r1
c3b3e86906-Jun-2020 Evgenii Stepanov

Use PROT_NONE on the unused parts of CFI shadow.

This replaces a single 2Gb readable memory region with a bunch of tiny
regions, and leaves the bulk of 2Gb mapped but unaccessible. This

Use PROT_NONE on the unused parts of CFI shadow.

This replaces a single 2Gb readable memory region with a bunch of tiny
regions, and leaves the bulk of 2Gb mapped but unaccessible. This makes
it harder to defeat ASLR by probing for the CFI shadow region.

Sample CFI shadow mapping with this change:
7165151000-716541f000 ---p 00000000 00:00 0 [anon:cfi shadow]
716541f000-7165420000 r--p 00000000 00:00 0 [anon:cfi shadow]
7165420000-71654db000 ---p 00000000 00:00 0 [anon:cfi shadow]
71654db000-71654dc000 r--p 00000000 00:00 0 [anon:cfi shadow]
71654dc000-71654dd000 r--p 00000000 00:00 0 [anon:cfi shadow]
71654dd000-71654f0000 ---p 00000000 00:00 0 [anon:cfi shadow]
71654f0000-71654f1000 r--p 00000000 00:00 0 [anon:cfi shadow]
71654f1000-71e5151000 ---p 00000000 00:00 0 [anon:cfi shadow]

This change degrades CFI diagnostics for wild jumps and casts (i.e. when
the target of a CFI check is outside of any known library bounds). This
is acceptable, because CFI does not have much to tell about those cases
anyway. Such bugs will show up as SEGV_ACCERR crashes inside
__cfi_slowpath in libdl.so from now on.

Bug: 158113540
Test: bionic-unit-tests/cfi_test.*
Test: adb shell cat /proc/$PID/maps | grep cfi

Change-Id: I57cbd0d3f87eb1610ad99b48d98ffd497ba214b4

show more ...

Revision tags: platform-tools-30.0.3, platform-tools-30.0.2
eb6c7abd15-May-2020 Victor Khimenko

Copy translateSystemPathToApexPath to linker_translate_path.cpp

Bug: http://b/156397945

Test: m

Merged-In: I33f11b8a6a41475b6cdd65e1ff49b2084c33b197
Change-Id: I33f11b8

Copy translateSystemPathToApexPath to linker_translate_path.cpp

Bug: http://b/156397945

Test: m

Merged-In: I33f11b8a6a41475b6cdd65e1ff49b2084c33b197
Change-Id: I33f11b8a6a41475b6cdd65e1ff49b2084c33b197
(cherry picked from commit d15229df76e78337532c19d42c01b2c51db8f2f1)

show more ...

ccf1602413-May-2020 Victor Khimenko

Allow native_bridge linker to use different APEX from native one

Bug: http://b/156397945

Test: dlfcn.dlopen_system_libicuuc_android_api_level_28 with native_bridge

Merged-I

Allow native_bridge linker to use different APEX from native one

Bug: http://b/156397945

Test: dlfcn.dlopen_system_libicuuc_android_api_level_28 with native_bridge

Merged-In: I3ecd929a0c31dda8cd424795f21f6ef472776557
Change-Id: I3ecd929a0c31dda8cd424795f21f6ef472776557
(cherry picked from commit 01790fdc6928a34125f092bbf98e9217a2251fa5)

show more ...

Revision tags: android-mainline-10.0.0_r11, platform-tools-30.0.1
76eb84a421-Apr-2020 Ryan Prichard

__loader_cfi_fail: acquire g_dl_mutex

CfiFail calls find_containing_library, which searches the linker's
internal soinfo list, which could be modified by another thread.

Bug: ht

__loader_cfi_fail: acquire g_dl_mutex

CfiFail calls find_containing_library, which searches the linker's
internal soinfo list, which could be modified by another thread.

Bug: http://b/150372650
Test: bionic-unit-tests
Change-Id: I59024a0a47913caa75702f15ec058b0a360727b5
(cherry picked from commit 172611f5cee5ce1351a83ec9f83e13235d04b008)

show more ...

771da6f521-Apr-2020 Ryan Prichard

android_get_exported_namespace: acquire g_dl_mutex

android_get_exported_namespace searches g_exported_namespaces, which
isn't modified after process initialization, but it does the searc

android_get_exported_namespace: acquire g_dl_mutex

android_get_exported_namespace searches g_exported_namespaces, which
isn't modified after process initialization, but it does the search
using a new std::string object, and the linker's malloc/free functions
aren't thread-safe. (They're protected by the same lock (g_dl_mutex) as
the rest of the linker's state.)

Bug: http://b/150372650
Test: bionic-unit-tests
Change-Id: Iafd12e5ab36ae61f0642aad59939f528d31bda16
(cherry picked from commit c2a93792fc9799d0c2f07f260f52e533e3bd178e)

show more ...

Revision tags: platform-tools-30.0.0, android-r-preview-4, android-r-preview-3, android-r-preview-2
a08c97be05-Mar-2020 Chih-Hung Hsieh

Fix bugprone-macro-parentheses warnings

Bug: 150783705
Test: WITH_TIDY=1 make

This is a cherry-pick of fa658eb094d915a9640a4d0642adee7667f439e7

Change-Id: If47b7adaa5f3

Fix bugprone-macro-parentheses warnings

Bug: 150783705
Test: WITH_TIDY=1 make

This is a cherry-pick of fa658eb094d915a9640a4d0642adee7667f439e7

Change-Id: If47b7adaa5f3ba3c518fb0be48f0ffdc81d204b2
Merged-In: If47b7adaa5f3ba3c518fb0be48f0ffdc81d204b2

show more ...

515a0e2e17-Mar-2020 Jooyung Han

Revert "Statically link libdl.a to linker"

This reverts commit ec829ed4ea3e0b2e1444ee4dfef660c49e392292.

Reason for revert: This workaround is not necessary with ag/10700799

Revert "Statically link libdl.a to linker"

This reverts commit ec829ed4ea3e0b2e1444ee4dfef660c49e392292.

Reason for revert: This workaround is not necessary with ag/10700799

Change-Id: I2bf469bfe00f3a70e67085abfb3822db6908d522
Bug: 150860940

show more ...

ec829ed406-Mar-2020 Jiyong Park

Statically link libdl.a to linker

When libbase is built for an APEX, it uses dlsym to reflectively access
liblog symbols that are added in R. This is because the APEX where
libbasse

Statically link libdl.a to linker

When libbase is built for an APEX, it uses dlsym to reflectively access
liblog symbols that are added in R. This is because the APEX where
libbasse is packaged into might be running in pre-R devices where the
symbols don't exist in liblog.so.

This however causes a problem for a static executable in an APEX. Since
it is in an APEX, the dlsym is used. But libdl.so which provides dlsym
is not available to static executable. Currently, the dynamic linker is
the only executable in an APEX that all of its dependencies are
statically linked. Fixing the issue by providing fake dlsym by
statically linking to libdl.a.

Bug: 149569129
Test: m

Change-Id: I2e9e45d9876c2d6c878e541715389e6d1ef56996

show more ...

Revision tags: platform-tools-29.0.6, android-r-preview-1, android-vts-9.0_r14, android-vts-9.0_r13, android-vts-9.0_r12, android-cts-9.0_r13, android-cts-9.0_r12, android-cts-9.0_r11
f4e3d42f11-Jan-2020 Peter Collingbourne

Delete definitions of __aeabi_unwind_cpp_pr0.

These are no longer necessary now that LLVM no longer emits references to
this symbol on Android.

Bug: 144430859
Merged-In: I6c

Delete definitions of __aeabi_unwind_cpp_pr0.

These are no longer necessary now that LLVM no longer emits references to
this symbol on Android.

Bug: 144430859
Merged-In: I6c43338f755ce5a79e2df36bd3f2006a748fab27
(cherry picked from commit 27c1e220361b0b3ab0b8fae35e8767935e8680ec)
Change-Id: I6c43338f755ce5a79e2df36bd3f2006a748fab27

show more ...

4c9293f215-Feb-2020 Mitch Phillips

[GWP-ASan] Export GWP-ASan regions to libdebuggerd.

Exports GWP-ASan allocator information callbacks to libdebuggerd so that
tombstoned can get information from the GWP-ASan allocator in

[GWP-ASan] Export GWP-ASan regions to libdebuggerd.

Exports GWP-ASan allocator information callbacks to libdebuggerd so that
tombstoned can get information from the GWP-ASan allocator in the case
of a crash.

Bug: 135634846
Test: atest bionic-unit-tests

Change-Id: Ie16426af55602fb2a76c4e69217773354c365843

show more ...

47ddeb1a18-Feb-2020 Kiyoung Kim

Merge "Deprecate sys.linker.use_generated_config property"

1878690f12-Feb-2020 Kiyoung Kim

Deprecate sys.linker.use_generated_config property

sys.linker.use_generated_config property was introduced at the beginning
of linkerconfig development to skip this generated configurati

Deprecate sys.linker.use_generated_config property

sys.linker.use_generated_config property was introduced at the beginning
of linkerconfig development to skip this generated configuration if it
does not work properly during dev. However, linkerconfig development is
now completed and is working properly from most of devices, so this
property is no longer in use. Therefore deprecating this property as
this would not be used.

Bug: 149335054
Test: m -j passed
Test: No linking error from Cuttlefish and Crosshatch
Change-Id: I0a1b3f36b69872862196b1613718a75d482e0a92

show more ...

c65b55cd14-Feb-2020 Ivan Lozano

Merge "Remove XOM properties."

1479893014-Feb-2020 Elliott Hughes

Remove unused mips/mips64 code from the linker.

Test: treehugger
Change-Id: I42f1e4c492ac644cf78e7c1196ba9b3518f9c8f8

3e928edc12-Feb-2020 Ivan Lozano

Remove XOM properties.

XOM is no longer supported by the build system, so remove these
properties.

Bug: 123034666
Bug: 147300048
Test: Build succeeds.
Change-Id: I77

Remove XOM properties.

XOM is no longer supported by the build system, so remove these
properties.

Bug: 123034666
Bug: 147300048
Test: Build succeeds.
Change-Id: I77efc98241f45b1a78b1cca5560f64eef5ef22f4

show more ...

57e6b86113-Feb-2020 Roland Levillain

Adjust the documentation of `get_ld_config_file_apex_path`.

Test: n/a
Bug: 147987608
Change-Id: I479a63a2fa7e0975db80fcfdda78d2ee154c53cb

a399ede407-Feb-2020 Kiyoung Kim

Merge "Use generated linker config for APEX binaries"

22fa3dde01-Feb-2020 Ryan Prichard

Ignore symbols of imported libs' dependencies

When a library is present in a namespace via the secondary_namespaces
list (i.e. the executable, LD_PRELOAD, DF_1_GLOBAL, or
android_cre

Ignore symbols of imported libs' dependencies

When a library is present in a namespace via the secondary_namespaces
list (i.e. the executable, LD_PRELOAD, DF_1_GLOBAL, or
android_create_namespace inheritance), then we want to search that
library's symbols, but not the symbols of its dependencies. Otherwise,
we want to search the dependencies to handle cross-NS dependency.

Bug: http://b/148569846
Test: bionic unit tests
Change-Id: If798d69de28ed5c0f1a155e4ff85c7e08934e531

show more ...

fb58744f29-Jan-2020 Kiyoung Kim

Use generated linker config for APEX binaries

LinkerConfig will start to generate linker configuration for APEX
binaries. Linker should check if this generated file exists first, and

Use generated linker config for APEX binaries

LinkerConfig will start to generate linker configuration for APEX
binaries. Linker should check if this generated file exists first, and
use it if exists and otherwise use ld.config.txt under APEX etc.

Bug: 147987608
Test: m -j passed
Test: Tested with adbd and SWCodec from Cuttlefish and Crosshatch
Change-Id: I5a0c28ee1a427adface3e67c8af062e1b2ef6197

show more ...

e503383c01-Feb-2020 Ryan Prichard

Comment two linker namespace functions

Test: it builds
Change-Id: I4dee0d4da230bd559319317b504e2c597f814f50

272458ee24-Jan-2020 Ryan Prichard

Rename dlsym_handle_lookup:6 to dlsym_handle_lookup_impl

Rearrange a function to remove a forward declaration.

Test: m linker
Change-Id: I014eac3319bd6f4c10f8bba50f8006f96bb33dce

1d8f6f2f28-Jan-2020 Elliott Hughes

Merge "Modernize SHT_RELR support."

6663f55225-Jan-2020 Elliott Hughes

Modernize SHT_RELR support.

Until now we've only supported RELR with our own OS-private-use
constants. Add support for the official numbers (while maintaining
support for the histori

Modernize SHT_RELR support.

Until now we've only supported RELR with our own OS-private-use
constants. Add support for the official numbers (while maintaining
support for the historical numbers).

Add tests to ensure we continue to support both indefinitely.

We can't yet flip the build system over to using the official constants
because the old GNU binutils objcopy we still use in most cases (for the
mini-debug section) only supports the historical constants.

Bug: http://b/147452927
Test: treehugger
Change-Id: If214fce7fade4316115947e90b78ab40864b61f2

show more ...

29546b9125-Jan-2020 Yifan Hong

Merge "Make ramdisk_available."

928c249223-Jan-2020 Ryan Prichard

Remove an unused code path

A static analyzer is complaining that num_valid_bits could be 64, and if
it were 64, then two later accesses would be out-of-bounds. is_nul_u64
can't be ze

Remove an unused code path

A static analyzer is complaining that num_valid_bits could be 64, and if
it were 64, then two later accesses would be out-of-bounds. is_nul_u64
can't be zero, though, because we only exit the loop when part of is_nul
is non-zero.

Bug: none
Test: manual
Change-Id: I75c3f70b600aa5478cb32fdf4ca0ae1173b69524

show more ...

12345678910>>...54