Commit Graph

342 Commits

Author SHA1 Message Date
Jiyong Park
bb1432b61b Temporarily whitelisting system domains writing vendor props
system properties must not be used as a communication channel in between
system and vendor processes. However, there has been no enforcement on
this: system process could write system properties that are owned and
read by vendor processes and vice versa. Such communication should be
done over hwbinder and should be formally specified in HIDL.

Until we finish migrating the existing use cases of sysprops to HIDL,
whitelisting them in system_writes_vendor_properties_violators so that
the violators are clearly tracked.

These violators are allowed only for P, but not for Q.

Bug: 78598545
Test: m -j selinux_policy when choosecombo'ed to aosp_arm64
Change-Id: I8f66aa20bb2d926cf517d40c93f4300c4d16b04b
2018-05-18 20:16:51 +09:00
Isaac Chen
e28dc89ca8 Merge "Enable PRODUCT_COMPATIBLE_PROPERTY for aosp_$arch" into pi-dev
am: 8f222b9e15

Change-Id: Id145117b535cc7a304b6c91897770d550a4e97ac
2018-05-14 21:16:52 -07:00
Isaac Chen
8f222b9e15 Merge "Enable PRODUCT_COMPATIBLE_PROPERTY for aosp_$arch" into pi-dev 2018-05-15 04:09:36 +00:00
Bowgo Tsai
4f2b09be68 Merge "Enable /cache mount point" into pi-dev
am: 115aae0f93

Change-Id: I0e89f53b8fe5a932de7641646d5b034358e1bdd0
2018-05-10 19:20:54 -07:00
Bowgo Tsai
4e9ff91935 Enable /cache mount point
Non-A/B devices using AOSP OTA flow will mount /cache in the
fstab file. Without setting BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE,
/cache will be a symlink to /data/cache which introduces the
failure of `mount_all /vendor/etc/fstab.{ro.hardware}`. This is
because all devices laucned in P need to switch to "system-as-root".

This CL sets board config to create /cache directory in rootfs
(system-as-root GSI image). Note that A/B devices doesn't mount
or use /cache so leaving an empty /cache in rootfs has no harm.

Bug: 78485405
Test: Boot GSI on walleye
Change-Id: Ic260d2917cc64c9497f5f60ea11303e953e80efd
2018-05-10 15:20:49 +08:00
Isaac Chen
075ee920fb Enable PRODUCT_COMPATIBLE_PROPERTY for aosp_$arch
GSI Pi (for newly launched devices) need to enable this to pass
VtsTrebleSysProp.

Bug: 79395858
Test: Built aosp_{arm,arm64,x86,x86_64}. Check system/etc/prop.default
    and found "ro.actionable_compatible_property.enabled=true".
    aosp_x86(_64) could boot to home screen.

Change-Id: I04a4ff7c5feee7671d727c04c9d9657b63ec0912
2018-05-10 13:13:21 +08:00
Isaac Chen
64dec58cc2 Merge "Build disabled vbmeta.img for aosp_$arch" into pi-dev
am: 0d35d1a425

Change-Id: I9d0865299c34dd6997d08bb1a297ca6acda9ef8b
2018-05-09 00:00:47 -07:00
Isaac Chen
e63c937bc3 Build disabled vbmeta.img for aosp_$arch
System images of aosp_$arch are used as GSIs in P, and traditional GSI
users often need a special vbmeta image to disable verity (if AVB is
employed) befrre they flash the GSI.

"BOARD_BUILD_DISABLED_VBMETAIMAGE := true" builds such vbmeta.img

Bug: 79393905
Test: # For arch in arm, arm64, x86, x86_64, do
    $ lunch aosp_$arch; m -j # found vbmeta.img under $OUT

Change-Id: I113006385991a2daab60d3c55dc03f23f1b383b8
2018-05-08 18:10:06 +08:00
android-build-team Robot
70299e3414 Merge "Create system.prop for GSI Pi" into pi-dev
am: 5646b804de

Change-Id: Ie9f26ef4e76905d8cf77de97242a39cef22cf082
2018-04-30 14:14:55 -07:00
SzuWei Lin
3fc49fede8 Create system.prop for GSI Pi
Properties for GSI Pi are not exactly the same as those for legacy GSI.
Create a new gsi_system.prop for GSI Pi to avoid reusing legacy
treble_system.prop used by legacy GSI (aosp_$arch_a(b) products).

Bug: 78605339
Test: build and observe the system/build.prop
Change-Id: I435e33558e244009af9a91a97580fd56591ff6f3
2018-04-26 08:55:43 +00:00
Isaac Chen
50958e2cae Merge "Enable VNDK for aosp_arm(64)" 2018-04-24 18:10:44 +00:00
Treehugger Robot
a0f595ec69 Merge "ARM emulator: aosp_arm on 64-bit binder and kernel" 2018-04-24 13:35:01 +00:00
Isaac Chen
5327e98b1a Enable VNDK for aosp_arm(64)
This is needed for the system images of aosp_arm(64) products to
be used as their respective GSIs in P, and for also aosp_arm(64)
products to boot with the current GSIs.

Bug: 78255604
Test: Built and booted the following products to home screen
    $ lunch aosp_arm-userdebug; m -j; emulator
    $ lunch aosp_arm64-userdebug; m -j; emulator
    # The system image, both userdebug and user builds, of
    # aosp_arm64 could also boot to home screen and browse
    # the network on a physical device.

Change-Id: I83b79fd4d4e6e522ee78c720fb8c5f6f67ee411b
Merged-In: I83b79fd4d4e6e522ee78c720fb8c5f6f67ee411b
(cherry picked from commit f71547079a)
2018-04-24 19:12:11 +08:00
Isaac Chen
9cbaac5cb7 Merge "Enable VNDK for aosp_arm(64)" into pi-dev
am: 04e361a795

Change-Id: I2aedb55e7bbd112bb31da74bba4809b2f33f0515
2018-04-23 22:05:05 -07:00
Isaac Chen
50e6251baa ARM emulator: aosp_arm on 64-bit binder and kernel
Starting in P, all 32-bit and 64-bit architectures use 64-bit
binder interface. This is similar to ag/3576770 for x86.

Bug: 71861550
Test: the following products can boot to home screen successfully:
    lunch aosp_arm-userdebug; m -j; emulator
    lunch sdk_phone_armv7-userdebug; m -j; emulator
Change-Id: Ibe1f53a5798342555e2e84395a13b48d461f483d
Merged-In: Ibe1f53a5798342555e2e84395a13b48d461f483d
(cherry picked from commit 6f114c0110c466d2a117f3e531f9ea5170a121ee)
2018-04-24 10:10:50 +08:00
Isaac Chen
0c97f084c7 Make aosp_$arch system images closer to GSIs
This change modifies aosp_$arch product makefiles so their
system images can be closer to their respective GSIs.

The added contents in this CL are based on treble_common*.mk.
Contents specific to GSI are in aosp_$arch.mk.
Contents common to all devices are moved to full_base.mk.
Contents related to specific device are moved to device.mk.

BoardConfig related makefiles will be changed in another CL.

Bug: 70772101
Test: The following products can boot to home screen:
    $ lunch aosp_x86-userdebug; m -j; emulator
    $ lunch aosp_x86_64-userdebug; m -j; emulator
    $ lunch aosp_arm-userdebug; m -j; emulator
    $ lunch aosp_arm64-userdebug; m -j; emulator

Change-Id: I225a13dd74b3e748cc5d1705e1a453348b01d43f
Merged-In: I225a13dd74b3e748cc5d1705e1a453348b01d43f
(cherry picked from commit 164eed2e7d)
2018-04-24 10:03:14 +08:00
Isaac Chen
f71547079a Enable VNDK for aosp_arm(64)
This is needed for the system images of aosp_arm(64) products to
be used as their respective GSIs in P, and for also aosp_arm(64)
products to boot with the current GSIs.

Bug: 78255604
Test: Built and booted the following products to home screen
    $ lunch aosp_arm-userdebug; m -j; emulator
    $ lunch aosp_arm64-userdebug; m -j; emulator
    # The system image, both userdebug and user builds, of
    # aosp_arm64 could also boot to home screen and browse
    # the network on a physical device.

Change-Id: I83b79fd4d4e6e522ee78c720fb8c5f6f67ee411b
2018-04-23 19:19:29 +08:00
Isaac Chen
97a1b157d9 Merge "Make aosp_$arch system images closer to GSIs" into pi-dev
am: 81a492c7e8

Change-Id: I07870685ece000f4da2231f12095dbf0ae32ac95
2018-04-18 17:56:00 -07:00
Isaac Chen
164eed2e7d Make aosp_$arch system images closer to GSIs
This change modifies aosp_$arch product makefiles so their
system images can be closer to their respective GSIs.

The added contents in this CL are based on treble_common*.mk.
Contents specific to GSI are in aosp_$arch.mk.
Contents common to all devices are moved to full_base.mk.
Contents related to specific device are moved to device.mk.

BoardConfig related makefiles will be changed in another CL.

Bug: 70772101
Test: The following products can boot to home screen:
    $ lunch aosp_x86-userdebug; m -j; emulator
    $ lunch aosp_x86_64-userdebug; m -j; emulator
    $ lunch aosp_arm-userdebug; m -j; emulator
    $ lunch aosp_arm64-userdebug; m -j; emulator

Change-Id: I225a13dd74b3e748cc5d1705e1a453348b01d43f
2018-04-18 18:28:41 +08:00
Isaac Chen
3137955323 Merge "ARM emulator: aosp_arm on 64-bit binder and kernel" into pi-dev
am: 6bb69c4c3d

Change-Id: I492a34654f88a2191f23160722461b9cd85af4b0
2018-04-16 22:28:51 -07:00
Isaac Chen
dfa8e7796b ARM emulator: aosp_arm on 64-bit binder and kernel
Starting in P, all 32-bit and 64-bit architectures use 64-bit
binder interface. This is similar to ag/3576770 for x86.

Bug: 71861550
Test: the following products can boot to home screen successfully:
    lunch aosp_arm-userdebug; m -j; emulator
    lunch sdk_phone_armv7-userdebug; m -j; emulator
Change-Id: Ibe1f53a5798342555e2e84395a13b48d461f483d
2018-04-12 16:06:26 +08:00
Dan Willemsen
c7ecbfe34d Merge "Revert "Remove flags to turn overriding commands into errors"" am: 5c19615b55
am: 36850e37c9

Change-Id: Ic762fafaae579bd50960584878a4408ef1c47247
2018-04-06 17:21:02 -07:00
Dan Willemsen
07a7227776 Revert "Remove flags to turn overriding commands into errors"
This reverts commit 1d8e86139c.

Reason for revert: fixed art + mac bug

Change-Id: I53a4d490ef32270aaaa8051f5c44958d0bec6469
Test: on mac: m nothing
2018-04-06 21:00:17 +00:00
Dan Willemsen
19f96c9297 Merge "Remove flags to turn overriding commands into errors" am: dc348501f0
am: 9ea760ecd2

Change-Id: I155f5d5d4993fc12e11f5f7940905758c0be22f7
2018-04-06 11:46:32 -07:00
Dan Willemsen
1d8e86139c Remove flags to turn overriding commands into errors
This is a partial revert of I43b645658f468c23a5b9ebcfcd9d4516537db540

On at least a generic_x86 build internally:

art/build/Android.gtest.mk:121: error: overriding commands for target `Uncompressed', previously defined at art/build/Android.gtest.mk:101

Bug: 77611511
Test: none
Change-Id: I78ca65e6f0c81f09e7da848eda797b3a8f97a521
2018-04-06 10:50:45 -07:00
Dan Willemsen
d9a2594d1f Merge "Allow boards to turn overriding commands into an error" am: 3c93dbfa61
am: 1533d14754

Change-Id: I032fbc08fc17fb4c4f5d7f4e1f2ace0560407276
2018-04-06 09:12:29 -07:00
Dan Willemsen
ac406f5c68 Allow boards to turn overriding commands into an error
Many boards have warnings like this, saying that we defined a build
rule, but later something else came in and overrode it with something
else:

art/build/Android.gtest.mk:677: warning: overriding commands for target `test-art-target-gtest-cmdline_parser_test'
art/build/Android.gtest.mk:674: warning: ignoring old commands for target `test-art-target-gtest-cmdline_parser_test'

Beyond the obvious problem of replacing the rule with something else,
target-specific variables can be combined as well, leading to some very
strange problems.

Since so many boards still have problems like this, but we don't
currently have any global problems, add a flag so that we can mark
boards as not broken. This should prevent regressions while we clean up
the individual problems.

Once the non-broken devices number significantly more than the broken
devices, we'll switch this default. And once they're all cleaned up this
variable will become obsolete, and these warnings will always be errors.

Bug: 77611511
Test: lunch aosp_arm-eng; m nothing
Test: lunch aosp_marlin-eng; m nothing
Test: build_test on all downstream branches
Change-Id: I43b645658f468c23a5b9ebcfcd9d4516537db540
2018-04-05 17:26:35 -07:00
Bjoern Johansson
c8e8aa0030 Allow radio to read emulator network properties
am: a27d4b7270

Change-Id: I61b70ee712760f48707e446edf59896abbebbc64
2018-03-23 22:49:10 +00:00
Bjoern Johansson
a27d4b7270 Allow radio to read emulator network properties
A recent change added SELinux labels to the properties used by the DHCP
software and RIL to configure the network. Unfortunately that change
didn't give RIL the permissions needed to read those properties which
broke radio networking for the emulator. Fix it by allowing radio
related code to read the properties again.

BUG: 76211046
Test: Run emulator with -feature -Wifi and verify network connectivity
Change-Id: I7663a6598e2d501ee8336b2dae5fd78ff4ff69bc
2018-03-23 11:26:40 -07:00
Bjoern Johansson
5d145d5e58 Merge changes from topic "emu_wifi_fixes" into pi-dev
am: c6bd5fc81a

Change-Id: Ida600686727bb9f672150a710bbf59a0ed637f2f
2018-03-23 16:01:10 +00:00
Bjoern Johansson
71145103ff Build emulator images with emulator WiFi HAL
am: 275bdb08cd

Change-Id: I95c832768a63b911c4de8c3654372c4227ac9531
2018-03-23 16:00:42 +00:00
Bjoern Johansson
1b6dde54a0 Fix SELinux settings for WiFi in Treble
am: 760871c753

Change-Id: I7865e2c9edf9f3148e5728f8a1a8492730743183
2018-03-23 15:58:55 +00:00
Bjoern Johansson
3aa1249132 Add SELinux configuration for new DHCP programs
am: 3c4b342323

Change-Id: Iab97f3cd28c9499587124a8512809f6deffbcf37
2018-03-23 15:57:47 +00:00
Bjoern Johansson
6764c91986 Enable WiFi for arm, arm64 and x86_64
am: 12fd2d8824

Change-Id: I8ff7d4c2c31db5e2339a3cff767889b57695e81d
2018-03-23 15:56:57 +00:00
Bjoern Johansson
ee21ef387d Add support for WiFi in emulator
am: 127395fc8f

Change-Id: I05bff54a221536812e757c09a156c8b3be8f3af4
2018-03-23 15:56:01 +00:00
Bjoern Johansson
ca5bfb1ca7 Update SELinux rules to support emulator WiFi
SELinux policies have become stricter, this updates the emulator SELinux
rules to accomodate these changes. It also adds rules for the new
createns command with the accompanying execns changes that are needed
to work with an updated filesystem layout.

BUG: 74514143
Test: Compile emulator images and verify that WiFi works
Change-Id: I4b58cea681a1e41b0cb7368e1c696f74ce28f871
2018-03-22 12:59:49 -07:00
Bjoern Johansson
275bdb08cd Build emulator images with emulator WiFi HAL
Use the new emulator WiFi HAL. This is specified by the
BOARD_WLAN_DEVICE setting. This also requires that the wifi HAL service
is included.

BUG: 74514143
Bug: 68338427
Test: run cts -m CtsIncidentHostTestCases -t
com.android.server.cts.BatteryStatsValidationTest#testWifiDownload
Change-Id: Ib59550b6cfba1e2e8686a5c805cd6b3913e8508e
(cherry picked from commit 23073c6ee33eca56f1ae0c45615b87ec9aec712e)
(cherry picked from commit 2d51c9b2bf0774ac46837a93181c83329e6fc662)
2018-03-22 12:59:20 -07:00
Bjoern Johansson
760871c753 Fix SELinux settings for WiFi in Treble
Update SELinux permissions to work with Treble and the much stricter
SELinux rules.

BUG: 74514143
Test: Compile and manually test that WiFi is working
Change-Id: Ic0a6417fb4fed1597fee70367924e5d59f37e725
(cherry picked from commit 37d7bc2adcc4bfd4c0f03dcddf1c7fbd31e87a4f)
(cherry picked from commit 1b0158a4ab6ca4f05b4b186ec3a080c689492b58)
2018-03-22 12:58:32 -07:00
Bjoern Johansson
3c4b342323 Add SELinux configuration for new DHCP programs
Add the dhcpclient and dhcpserver binary files to the makefile and
file_contexts and give them the appropriate SELinux permissions to run.

BUG: 74514143
Test: Build emulator image and manually verify WiFi functionality
Change-Id: Ia472ef4c86c9b6ba967c0fc7443db607aed1e485
(cherry picked from commit 917bda2587d219e35404a298c05a7179519815c1)
(cherry picked from commit 87b9f937113801b50612863cb13e6391cc1f3105)
(cherry picked from commit 760a19890ac99144f6b143015c36e7aaa3797c73)
2018-03-22 12:58:29 -07:00
Bjoern Johansson
12fd2d8824 Enable WiFi for arm, arm64 and x86_64
Set the required parameters in BoardConfigs to allow WiFi to work on
remaining architectures. Also update SELinux policy needed to make WiFi
work on arm and arm64. This was not required on x86 but refused to work
on arm without these changes.

BUG: 74514143
Test: Build emulator image and manually verify WiFi functionality
Change-Id: Ic645ccf7249f84ae0320770b0ef7b1b6102b7b14
(cherry picked from commit 6d28bfbeefea8fe1919ff0987ae3d935d974dc6d)
(cherry picked from commit 023a7ba64bd3b189a148ad388606ca5747ea20b1)
(cherry picked from commit 9c9cefdafbae50c0e371c30bcccb98a8b7697e98)
2018-03-22 12:57:41 -07:00
Bjoern Johansson
127395fc8f Add support for WiFi in emulator
Add required SELinux permissions to run services required for WiFi and
network namespaces. Add required executables and files required to run
WiFi services such as hostapd to create an access point and
wpa_supplicant to connect to it.

BUG: 74514143
Test: Build emulator image and manually verify WiFi functionality
Change-Id: I38461b878abcaae842b4656dea82792e23100174
(cherry picked from commit 21c5c3dcf91b1be71abe8618e2eb31529438e325)
(cherry picked from commit 68a36140f7a3a766b8adc16cd85c2f0c81bfb44b)
(cherry picked from commit e6dab593b8eebccb1e6311e626c8aca943ba6933)
2018-03-22 12:57:36 -07:00
Bo Hu
2edc945376 Merge "emulator: allows drm hal vendor access" into pi-dev
am: 3972c88026

Change-Id: Ib672572f01a091e18e17d43a073778be6d417c31
2018-03-21 21:54:46 +00:00
bohu
a9127502d3 emulator: allows drm hal vendor access
BUG: 76029272
Change-Id: Ib4de8b4cd5cf5899bee23c798156006d3680ab8d
2018-03-21 10:24:25 -07:00
Steven Moreland
062fe37593 Merge "generic: BOARD_VNDK_VERSION := current" am: 252ff3d6b6
am: d7adba6ae5

Change-Id: Ib9589451b5386ae73884ec77a2a8b8d6c7cc7d6b
2018-03-16 21:52:46 +00:00
Steven Moreland
5ee470be27 generic: BOARD_VNDK_VERSION := current
Bug: 70694532
Bug: 69526027
Test: lunch generic-userdebug, m -j, emulator (hangs >2 hours)

Change-Id: I377ab1ba2a5aea75096b27a1ec2366abf9d71fc4
2018-03-15 16:41:33 -07:00
Yahan Zhou
dddbf1fecb Merge "Add board name for emulator" am: 39acbe6446
am: 0547230ac1

Change-Id: Ia998564a709841a7ab162891164f73aea639b7d4
2018-02-28 18:53:20 +00:00
Yahan Zhou
12b5395c2f Add board name for emulator
VTS checks for ro.product.board before running. Emulator does not have
that value and causes an exception.

So let's add it to the emulator and call it goldfish_$(TARGET_ARCH).

BUG: 73741117
Test: vts-tradefed run vts, should run the tests
Change-Id: I6b00f2923bc9609d4d05c45d47ceddd2bd7be091
2018-02-27 18:11:48 -08:00
Nick Kralevich
ee79f54630 Merge "remove nnk from OWNERS" am: d6fa5bbc51
am: 439ecf8088

Change-Id: Ic428009c4d93f44354f16edb52b4bbb117a1ea6b
2018-02-27 19:27:30 +00:00
Nick Kralevich
0aa64275e8 remove nnk from OWNERS
See https://android-review.googlesource.com/c/platform/system/sepolicy/+/626014

Also remove klyubin who is no longer at Google.

Test: none
Change-Id: I98534c0cc676e41129b73331ad0e71e7fc1aa1ab
2018-02-27 09:15:10 -08:00
Bo Hu
6dc9db6051 Merge "emulator: remove opengles property" am: c187fdf751
am: 438eebab81

Change-Id: I5d616d60bb4e082d493fb66f49c4abfb0fcd7c64
2018-02-23 23:11:47 +00:00