Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit adf4503d authored by Martin Stjernholm's avatar Martin Stjernholm
Browse files

Apply the standard system linker config to all of /data.

This is necessary to get the correct APEX namespace setup for apps that
executes binaries from there.

In older releases no linker config applied to binaries in /data, so the
fallback config in /system/bin/linker was used, which basically just looked
up libraries in /system/{lib,lib64}. With the introduction of APEXes that
location no longer contains the complete set of libraries, so this is
necessary to retain functional parity.

Strictly speaking this fallback rule should apply as last resort for a
binary in any location, but the linker does not accept "dir.system = /".

Test: Flash and boot
Test: The app regression in b/128569634
Bug: 128569634
Change-Id: Icfcd66f0a7d8d898618be1b6186bb1111d20d688
parent d2c4eb0d
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -11,14 +11,13 @@ dir.legacy = /vendor
dir.legacy = /odm
dir.legacy = /sbin

dir.legacy = /data/nativetest
dir.legacy = /data/nativetest64
dir.legacy = /data/benchmarktest
dir.legacy = /data/benchmarktest64

# Except for /postinstall, where only /system and /product are searched
dir.postinstall = /postinstall

# Fallback entry to provide APEX namespace lookups for binaries anywhere else.
# This must be last.
dir.legacy = /data

[legacy]
namespace.default.isolated = false

+4 −5
Original line number Diff line number Diff line
@@ -27,13 +27,12 @@ dir.unrestricted = /data/nativetest64/unrestricted
# necessary) the unrestricted subdirs above. Then clean this up.
dir.unrestricted = /data/local/tmp

dir.system = /data/nativetest
dir.system = /data/nativetest64
dir.system = /data/benchmarktest
dir.system = /data/benchmarktest64

dir.postinstall = /postinstall

# Fallback entry to provide APEX namespace lookups for binaries anywhere else.
# This must be last.
dir.system = /data

[system]
additional.namespaces = runtime,conscrypt,media,resolv,sphal,vndk,rs

+4 −5
Original line number Diff line number Diff line
@@ -27,13 +27,12 @@ dir.unrestricted = /data/nativetest64/unrestricted
# necessary) the unrestricted subdirs above. Then clean this up.
dir.unrestricted = /data/local/tmp

dir.system = /data/nativetest
dir.system = /data/nativetest64
dir.system = /data/benchmarktest
dir.system = /data/benchmarktest64

dir.postinstall = /postinstall

# Fallback entry to provide APEX namespace lookups for binaries anywhere else.
# This must be last.
dir.system = /data

[system]
additional.namespaces = runtime,conscrypt,media,resolv,sphal,vndk,rs