Commit Graph

49 Commits

Author SHA1 Message Date
Jiyong Park bfa03ee9dc Relocate VNDK-SP to /system/lib/vndk-sp and add RS libs to VNDK-SP
VNDK-SP is relocated back to /system partition from /vendor partition,
following the original design.

In addition, the namespace for RenderScript is added. The namespace is
dedicated for loading VNDK-SP libs for RenderScript such as
libRS_internal.so. The reason for having a separate namespace is that
RenderScript requires more permitted paths (/data/*) which should not be
allowed for normal SP-HALs.

Bug: 37522144
Bug: 37550338
Test: sailfish builds and boots well
Test: lsof shows VNDK-SP libs are loaded from /system/lib/vndk-sp
Test: RenderScript app (CameraScript) runs well
Change-Id: Id139f626cafae2e43ee4eefc5a57a204e31bbbc9
2017-04-26 09:30:36 +09:00
Andreas Gampe c7c2d7bcd4 Linker: Add ASAN support to treble ld.config
Add asan counterparts.

Bug: 37579959
Test: m && m SANITIZE_TARGET=address
Merged-in: I23f05436b79fbcb3f6fa11d84c95fcd180fad3b3
Change-Id: I23f05436b79fbcb3f6fa11d84c95fcd180fad3b3
2017-04-25 21:59:37 +09:00
Jiyong Park 7b701de5e0 linker: don't allow libui to SP-HALs and fix warning
libui.so is not used by SP-HALs, so it is removed from the list of libs
exposed from the default namespace.

Also, this fixes a warning message "property value is empty" caused by
the automatically removed trailing '/' for the section 'legacy'. Since
the legacy behavior is already implemented by the linker itself, the
behavior doesn't need to specified in ld.config.txt.

Test: marlin/sailfish boots
Test: no warning message is shown
Change-Id: Ib679794d63b01c6794663dc88f1ab7e72cfb11d3
2017-04-18 08:16:03 +09:00
Jiyong Park 450cff4b68 Configure ld.config.txt for SP-HALs
Now, framework process (any process that is executing /system/bin/* or
/system/xbin/*) are started with three namespaces; default, sphal and
vndk.

default namespace is the namespace that is responsible for loading libs
from /system/lib. It can't load libs from other places such as
/vendor/lib. (However, we temporarily open the path since we haven't
finished the system partition cleanup, but will do eventually).

sphal namespace is the namespace where SP-HAL (Same-process HAL) is
loaded. SP-HAL are the only vendor libraries that are allowed to be
loaded inside framework processes. libEGL_<chipset>.so and
android.hardware.graphics.mapper@2.0-impl.so, etc are SP-HALs. When
framework needs to load those SP-HALs, it explicitly loads it from this
namespace using android_get_exported_namespace() and
android_dlopen_ext().

vndk namespace is the namespace for loading vndk-sp (Vendor-NDK for
Same-Process) libs, which is a small set of framework libraries that
SP-HALs can link against. These libraries are compiled for the same
version of Android that the vendor partition is compiled against.
SP-HALs can not use libraries other than vndk-sp and ndk libs.
Membership to vndk-sp and ndk are strictly closed.

Note that in a system, there are two copies of vndk-sp libs. One at
/system/lib and the other at /vendor/lib/vndk-sp. As a result, there can
be two instances of a same library in a process.

Also adds ld.config.legacy.txt which is used on non-Treble devices where
PRODUCT_FULL_TREBLE is not set to true.
Note, this split can be cleaned up further after b/37139976 is solved.

Bug: 34407260
Test: git diff HEAD:rootdir/etc/ld.config.legacy.txt
HEAD^:rootdir/etc/ld.config.txt => 0
Test: sailfish boots (because BOARD_VNDK_VERSION is not set to
'current')

Change-Id: I8331d94edc38f22c4f8abc66cdf2050af9d0605b
2017-04-14 16:39:36 +09:00
Dimitry Ivanov 0bc3add41b Merge "Add ld.config.txt to /system/etc" am: d444f8663d am: e6f9497cca
am: 7bbe56c46b

Change-Id: I17bd0af0e7acdb8f4cea33c29812825ec78d5f3f
2017-03-25 05:26:30 +00:00
Dimitry Ivanov ee34aecafe Add ld.config.txt to /system/etc
This file describes how loader should set up
default namespace for different kind of binaries.

Note that vendor and some of system binaries are
not yet ready for this config to be enabled - they
rely on libraries they shouldn't be relying upon.

Bug: http://b/30435785
Test: m
Change-Id: I7d5853a6b55db169be1dc2c38cc682711bf7f7f5
2017-03-17 12:27:37 -07:00
Jesse Hall d08467f341 Add NDK libsync to linker whitelists
Test: make
Change-Id: Idb9ddfce7032a3faef7213327d3160968d4a80ba
2017-03-08 21:51:39 -08:00
Mathias Agopian f77e32cb6f add libnativewindow to the linker whitelist
Test: compile
Bug: treble
Change-Id: I59c614ef045dad79e68bbf6fe86f786ecd14ce78
2017-03-02 19:16:42 -08:00
Phil Burk 73b4f8aeed libaaudio: changed name from liboboe
Bug: 34749573
Test: CTS test_aaudio.cpp
Change-Id: Ic95f21fcaf0f13e09f57dfb612d5bcc4755f447b
Signed-off-by: Phil Burk <philburk@google.com>
2017-02-10 17:26:20 +00:00
Phil Burk 815024d24e Oboe: make liboboe.so public
Bug: 30210002
Test: in frameworks/av/media/liboboe/tests

Change-Id: Id7d0b0eebf68bc5e93fc257c2f924205db57312c
Signed-off-by: Phil Burk <philburk@google.com>
2016-12-21 17:19:32 -08:00
Eino-Ville Talvala 5f31ca2231 Add camera2 NDK library to public library lists
It was dropped in the migration to the public.libraries format
NDK is the same on standard Android and Wear.

Bug: 27742249
Change-Id: I1eafbb649c0ccc5b9a93471fa387624d838bd3d0
2016-03-18 12:33:19 -07:00
Dimitry Ivanov dbae9a9b77 Add libvulkan.so to the list of public libraries
Accidentally dropped it in 4b0e963872

Bug: http://b/27546414
Change-Id: I28835ce3229f778387efedf269d7f32572e09184
2016-03-17 10:57:22 -07:00
Dimitry Ivanov 4b0e963872 Move list of public libraries to a config file
This list contains libraries that should directly or indirectly
be accessible to apps for the platform. Note that this list is
not device specific but rather device class specific.

For now we have 2 separate lists; one for Android Phones and Tablets,
and another one for Android Wear devices.

Bug: http://b/27546414
Bug: http://b/22548808
Change-Id: I83de5e3cf67392d0e9af66f70123898bd5997146
2016-03-17 09:45:52 -07:00
Elliott Hughes 2a87d2b155 Remove long-obsolete file.
Change-Id: I728cc13b4a7ac93f9c923d2fc9bda2bb65ffe99d
2015-04-23 20:57:12 -07:00
Yabin Cui 25147416bb Add ip6-localhost to /system/etc/hosts.
Bug: 18791191
Change-Id: Id7cad8cfccadeb319f0dc7dcba8148a457f9f87d
2015-01-13 14:38:21 -08:00
Elliott Hughes b120134bd1 Remove long-dead readtty.
Change-Id: I15ae14542214a3802d43892da0d03cfb33e63c96
2014-11-24 12:01:21 -08:00
Matthew Xie 7ee2e26eb9 Remove DBUS from make and header files
DBUS had been needed by bluetooth bluz stack. It is not needed after
we replaced bluez stack with bluedroid stack.
bug 6872904

Change-Id: I3fa41c1dd4ac80bc679d5950b3b20c7f6d12265f
2013-04-23 14:02:16 -07:00
Keun young Park f5eb803543 move goldfish stuffs to device/generic/goldfish
- each files will be pulled in emulator.mk as PRODUCT_COPY_FILES

Change-Id: I4772e2fd863e6d2663f477c3acd8a90cb95b498a
2013-03-05 11:16:36 -08:00
Elliott Hughes 334ad0ed49 Track the setsebool change in the emulator init.rc.
setsebool's syntax changed in November. This is the sole
caller in AOSP.

Change-Id: I0da608ee974bc3a9060372ef68a71c52726a44a6
2012-12-21 14:45:27 -08:00
Stephen Smalley 1eee419e7a Modify init.rc and init.goldfish.rc for SE Android.
Set the security context for the init process.
Restore the security contexts of /cache and /data in case they were reset.
Specify the security context for services launched from the rootfs since
we cannot label their executables.
If on the emulator, set a policy boolean and restore the context of
/sys/qemu_trace to allow accesses not normally permitted on a device.

Change-Id: I166ffc267e8e0543732e7118eb0fd4b031efac3b
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2012-07-26 15:37:45 -04:00
David 'Digit' Turner a503456526 emulator: Move qemu-props to core service
The qemu-props program is launched at boot to read a series of
system property assignments from the emulator and apply them.

This is necessary to deal with the dynamic nature of the emulated
platform (e.g. the screen density which depends on the skin and
cannot be hard-coded in the platform image).

This patch ensures that qemu-props is started before any other
service that may read one of these properties (e.g. surface flinger).
This is done by encapsulating the program into a 'core' service.
Core services are all stared before regular ones.

Before the patch, qemu-props was started manually inside a script
that is called from a late emulator-specific boot service
(goldfish-setup).

The problem was that sometimes qemu-props was run too late.
This resulted in random flakiness, especially when running
on a low-end host machine.

Fix for bug 2161189 (and probably a few others)

Change-Id: I2933a25dcb5fecbb1fc238f157264e621b8f295b
2011-09-16 00:25:16 +02:00
David 'Digit' Turner 7db617efc0 resolved conflicts for merge of b013bfc1 to honeycomb-plus-aosp
Change-Id: I159dd58c403bc38f9637163d8cd5e6270e4f201c
2011-04-29 13:31:31 +02:00
David 'Digit' Turner f431d0499b ueventd.rc: Move /dev/qemu_trace to ueventd.goldfish.rc
+ Add /dev/qemu_pipe line for QEMU pipes.

Change-Id: If3c5c675bfc1585a1d6ffcd1042aaedbc2e94763
2011-04-26 18:07:45 +02:00
Ken Sumrall dd4d786cbf Fix for bug 3379244, non-eMMC devices don't start all services.
Fix for non-eMMC based devices to properly start the "on nonencrypted"
action.

Change-Id: I5d2966db352b02f1a1724fb105e1cefc46037e42
2011-02-17 18:09:47 -08:00
David 'Digit' Turner dc743112ca goldfish: Work-around to start the RIL daemon.
This change forces the start of the RIL daemon used to provide
3G connectivity to the system. It should normally be started
automatically by init.rc but there is a bug within
system/core/init/builtins.c that prevents this to happen.

Fixes the "No network connectivity" bug while the network
interface and route were properly setup.

Change-Id: Ieec0f513aabf92b8a59f0a86f64a16e97057c3c3
2011-01-22 02:24:36 +01:00
David 'Digit' Turner eeeca4dd45 rootdir: goldfish: Fix network route during emulation.
The net.eth0.gw system property is used by the ConnectivityService
to set the default route when it detects that 3G connectivity is
established. Because the property was undefined, the route was
unset which broke networking.

+ Format / document init.goldfish.sh

Change-Id: I1133cf6c093609300315cd0ea363c9e139b42521
2011-01-18 23:38:00 +01:00
David 'Digit' Turner 95df887ac0 rootdir: Fix system emulation startup.
This fixes the goldfish-specific config scripts used by init and ueventd
to properly setup the system under emulation. This fixes a lot of broken-ess
introduced by recent permission changes in the system.

Note that there are still several problems after this patch is applied, but
at least it becomes possible to get an adb connection to the emulated system,

Change-Id: Iff47bbf0fe5cb759fa93089284bb0f71e32405a2
2011-01-15 03:15:47 +01:00
Jean-Baptiste Queru 30be93c6e2 am 60c8f863: resolved conflicts for merge of 0fcbdb41 to gingerbread-plus-aosp
Merge commit '60c8f863ca84f3e5bb8e78d8001c53511f094d53'

* commit '60c8f863ca84f3e5bb8e78d8001c53511f094d53':
  Userland support for VM interconnection
2010-07-29 15:55:34 -07:00
Jean-Baptiste Queru 60c8f863ca resolved conflicts for merge of 0fcbdb41 to gingerbread-plus-aosp
Change-Id: I1396cd97b28f316849016d55596ad52fffd3235c
2010-07-29 15:53:16 -07:00
Dries Harnie 2a743730c7 Userland support for VM interconnection
Change-Id: I699608f3072b39c8da1a7cc313bd0b736e90f225
2010-07-15 13:19:37 +02:00
Mike Lockwood a2dffa9db6 init.rc: Move SD card support to device specific init.rc files
Change-Id: I5745e91df2b7c5722bd6e650931d3d2d7d0eadcb
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-06-15 22:48:30 -07:00
Colin Cross 44b65d047c init: Add ueventd.rc parsing to ueventd
Change-Id: Iea53050d6c10e8cabf563e5d80e84eaf78873695
2010-04-21 20:59:42 -07:00
San Mehat 6f957c3f25 generic_rootdir: vold_fstab: Change '/sdcard' -> '/mnt/sdcard'
Signed-off-by: San Mehat <san@google.com>
2010-02-19 18:38:28 -08:00
San Mehat 5184fc5c79 rootdir: Switch to vold.fstab
Signed-off-by: San Mehat <san@google.com>
2009-12-24 07:20:36 -08:00
Jean-Baptiste Queru 8c92ba1921 merge from open-source master 2009-09-01 08:28:21 -07:00
San Mehat 2dfe490f43 system: vold: Ensure a default vold.conf exists for generic target
Signed-off-by: San Mehat <san@google.com>
2009-08-31 08:05:49 -07:00
Simon Braunschmidt 15681df356 BUGFIX - ro.kernel.android.{qemud | ril} and ro.android.noril
This fixes both a typo and the fact that sh seems not to have
test or [.
(see also sh/builtins.def: ##testcmd commented out)

The handling of these properties was broken, having the effect
that the Modem in ... internal/telephony/test/Simulated*.java
was never run, even if it would have been the users/developers
intention.

See also issue #1380
http://code.google.com/p/android/issues/detail?id=1380

Signed-off-by: Simon.Braunschmidt@gmail.com>
2009-08-27 08:01:14 -07:00
Chia-chi Yeh 1219448dc7 rootdir: Remove ip-up-vpn script, which is replaced by an executable. 2009-07-10 15:51:01 +08:00
Chia-chi Yeh 3860b6e67c rootdir: Obsolete ppp/peers/common and racoon/racoon.conf. 2009-06-27 07:38:50 +08:00
Android (Google) Code Review bbdab64ddd Merge change 4592 into donut
* changes:
  rootdir: Remove gprs/pppd related scripts.
2009-06-26 15:19:39 -07:00
Hung-ying Tyan 34ccf656e2 Add new PPP IPCP script for VPN. 2009-06-26 08:11:59 +08:00
Chia-chi Yeh abd54c1b78 rootdir: Remove gprs/pppd related scripts.
vpn related scripts will be updated in the next change.
2009-06-18 17:18:51 +08:00
Chung-yih Wang 0bd9a9f5bc Add the ipcp scripts for pppd and racoon configuration for ipsec-tools.
1. add ip-up/ip-down script
2. add /etc/ppp/peers/common
3. add /etc/racoon/racoon.conf
2009-06-12 22:35:42 +08:00
David 'Digit' Turner 653164b6a0 Modify init.goldfish.sh to launch the 'qemu-props' program when the emulator boots up.
Its purpose is to receive a list of system property (name,value) pairs and set them on launch.
2009-05-26 13:16:59 +02:00
The Android Open Source Project f614d64d4b auto import from //branches/cupcake_rel/...@140373 2009-03-18 17:39:49 -07:00
The Android Open Source Project dd7bc3319d auto import from //depot/cupcake/@135843 2009-03-03 19:32:55 -08:00
The Android Open Source Project e54eebbf1a auto import from //depot/cupcake/@135843 2009-03-03 18:29:04 -08:00
The Android Open Source Project 35237d1358 Code drop from //branches/cupcake/...@124589 2008-12-17 18:08:08 -08:00
The Android Open Source Project 4f6e8d7a00 Initial Contribution 2008-10-21 07:00:00 -07:00