ag/6722341 will set WLAN driver/FW when start legacy HAL.
The patch removes init.qcom.wlan.sh because it is not necessary
Bug: 127715974
Test: Property with wlan driver/FW version at enforcing mode:
It can be verified by the below command:
# adb shell getprop vendor.wlan.driver.version
# adb shell getprop vendor.wlan.firmware.version
Change-Id: Id94874cb96bc489a0f3eccfb97d780001b712330
Set stune.boost to 100 to boost process to big cores and prefer_idle to
1 to spread tasks. This saves ~370ms from kernel boot to boot_complete.
Before CL:
BootComplete : 10.046 0.067631
Post CL:
BootComplete : 9.6713 0.083226
Test: boottime
Bug: 80345258
Change-Id: I29159ba3102a23f302ddc2a2747879fd1ca39c27
Recently, I saw some of bugreports doesn't include mm_event dump.
dumpstate_board.txt says just permission error instead of dumping trace.
I could reproduce it with android restarting( shell$ stop; start).
The permission in pixel-trace directory is changed from
drwxr-xr-x 5 root root 0 2019-02-15 21:21 pixel-trace
to
drw------- 5 root root 0 2019-02-15 21:21 pixel-trace
Originally, 600 permission is buggy from the beginning because directory
needs execution permission bit to allow access the file. However, question
is why the permission is not set when the directory is created but does
android is restarted.
The tracefs in kernel seems to not support permission when the directory
is created. It just use 755 hardcoding if I parse it rightly.
https://elixir.bootlin.com/linux/v5.0-rc6/source/fs/tracefs/inode.c#L430
I also read mkdir script implementation(i.e., do_mkdir). It does fchmod
if it founds the file is already existing. That's why the restart changes
the permission to the one I wrote in the script.
Let fix it to set the permission to 755 for directory and 660 files
from the beginning so that it should work even though android restart
accidentally.
Test: confirmed it works device $ stop; start; host$ adb bugreport
Change-Id: I36305283c327b44e476c6eb39ec028ef271c304f
Signed-off-by: Minchan Kim <minchan@google.com>
/data/vendor/tombstones should be root which be define
in system/core/rootdir/init.rc.
Previous change (ag/4706914) lead wifi_hal cannot write files to
/data/vendor/tombstones/wifi.
Bug: 121294677
Test: device can boot up
Test: wifi_hal can dump data to /data/vendor/tombstones/wifi.
Change-Id: Id62ec21bc9a71018b03deba17c9befcd8d7b1c31
Signed-off-by: Roger Wang <wangroger@google.com>
Commit aosp/836840 changes permissions for accessing /dev/uinput. That
broke the folio_daemon.
This daemon is responsible for supportic magnetic folio cases on Pixel
2. We need to continue to support this operation.
Allow the folio daemon to access /dev/uinput by enrolling it into the
uhid group.
Note: this is not an sepolicy issue, but a permission issue.
Bug: 120306105
Test: adb logcat | grep uinput
Before the change, see a bunch of permission denials from folio_daemon.
After the change, not seeing anything in the logcat.
Change-Id: Idb33c8427d55b165f5aca2a68c09fa7e749fef57
Add new mechanism for stopping FP HIDL after several times init fail.
This prevents the case of FP HIDL keeping trying to do init process and
raising CPU usage when sensor totally dead.
After limited times init retry fail (default 10 times), FP HIDL will
be stopped.
init-fingerprint-sh is for stopping fps_hal after init retry fail
serval times.
It keeps running until max init retry or fps_hal running successfully.
vendor.fps_hal restarts until max init retry times fail.
Test: build pass and FP functionaily are good.
Test: init process will be stopped after limited times retry fail
Bug: 111710758
Change-Id: I8a19bdd351e5d712f8e23c6a0849acb1771e61e5
Signed-off-by: emilchung <emilchung@google.com>
This patch creates a pixel owned tracing instance apart from
main tracer(i.e., /d/tracing/instances/pixel-trace) so that
we will keep a certain mount of data without interference from
others(e.g., traceur, atrace and so on). It's important to not
lose the information to investigate problems at bugreport.
This CL also adds dumpstatez and bugreport property hooks to
stop/restart the trace during bugreport to keep more old trace.
Allow dumpstate read mm_event trace from /d/tracing/instances/
pixel-trace/trace. With that, it could dump the trace into
bugreport file.
Bug: 116825025
Test: confirm with adb bugreport/bugreport via power menu shortcut/
volume up/down/power key combination. They includes traces in
dumpstate_board.txt with kernel turns on CONFIG_MM_EVENT_STAT.
Signed-off-by: Minchan Kim <minchan@google.com>
Change-Id: I699f362089b61247b2937accbd331327563b1e0c
All servicemanagers are started in rootdir/init.rc's `on init`
trigger, so there's no need to start them manually in device specific
rc files.
Test: boot
Change-Id: Ibdea8d5289322aae49af50e325beb793936ea525
This CL increase zram swap size from 512M to 1024M of p17.
It also increase swappiness from 60 to 100.
It has more benefit for overall system performance.
Detail is in the bug.
Bug: 117522738
Test: confirmed zram size and swappiness change manually
Change-Id: If75e47962915f6d4957e5fa9337e40dd6878fa65
Signed-off-by: Minchan Kim <minchan@google.com>
This was removed from the device in
I6fe5148d6b50b7c5706c09662a1ed0e7da4cb987.
Bug: 79551588
Test: Booted device and observed no relevant errors.
Change-Id: I35a114c10e8e116879ef2fd90487503805610c98
Put the inir.ramoops.sh to /vendor/bin/
The ramoops run commands are recorded in init.ramoops.rc individually
Bug: 113147446
Test: Build pass and test on walleye and taimen
can generate ramoops successfully.
Change-Id: I370cdfc36d7031a7f695abc2045ff756066d1902
Signed-off-by: Chungjui Fan <chungjuifan@google.com>
Test labs use start and stop charge levels to control the battery levels
of DUTs. This is not currently possible since retaildemo mode is set to
0 on every boot. After this behavior is removed, it will still be
possible to reset the charging behavior via a factory reset.
Bug: 112763954
Change-Id: I73992bb44d32357f0ed41b55fc551db79c486338
Signed-off-by: Maggie White <maggiewhite@google.com>
Define ConnectivityMonitor as _app & isPrivApp.
Give write permission in radio for
PowerAnomaly usecase.
Bug: 112197190
Test: manual - flashed build with changes in "connmon-privapp" topic,
ConnectivityMonitor works as intended
Change-Id: Iaf2ce49af29ed912024b30a07f80df4fe6220328
Bug: 78019660
- There are some wahoo devices occur unlabeled denials on persist_rfs_file
(/persist/rfs/msm/mpss/server_check.txt) with doing restorecon /persist.
- server_check.txt will be checked and re-generated whenever tftp_server is up.
Remove it and let tftp_server to re-generate it to workaround the denials on
these devices
avc: denied { getattr } for comm="tftp_server" path="/persist/rfs/msm/mpss/server_check.txt" dev="sdd3" ino=74 scontext=u:r:rfs_access:s0 tcontext=u:object_r:unlabeled:s0 tclass=file permissive=0
avc: denied { read } for comm="tftp_server" name="server_check.txt" dev="sdd3" ino=66 scontext=u:r:rfs_access:s0 tcontext=u:object_r:unlabeled:s0 tclass=file permissive=0
Change-Id: I105485111a2ca6072d596160fa7390e43e483b01
Signed-off-by: SalmaxChang <salmaxchang@google.com>
In current implementation, the icnss stats is not presented in
dumpstate_board.txt file because the file owner/group is set to
root/root.
This commit changes the owner of the file to system/system to enable
the bugreport to dump the info in dumpstate_board.txt. This setting is
consistent with other devices.
Bug: 111845187
Test: adb bugreport and check icnss stats in dumpstate_board.txt
Change-Id: Ieff0841b1aafc7428a9f88ffb7fb2c0ac9075f24
This daemon doesn't exist on the device and causes init errors during
boot.
init: /vendor/etc/init/hw/init.walleye.rc: 745: Unable to decode GID
for 'qcom_diag': getpwnam failed: No such file or directory
init: Could not start service 'vendor.qmuxd' as part of class 'main':
Cannot find '/vendor/bin/qmuxd': No such file or directory
Test: tree-hugger passes
Merged-In: Ib2bc1739cac088af3e9ef2e0482f2536dad8fb8c
Change-Id: Ib2bc1739cac088af3e9ef2e0482f2536dad8fb8c
This daemon doesn't exist on the device and causes init errors during
boot.
init: /vendor/etc/init/hw/init.walleye.rc: 745: Unable to decode GID
for 'qcom_diag': getpwnam failed: No such file or directory
init: Could not start service 'vendor.qmuxd' as part of class 'main':
Cannot find '/vendor/bin/qmuxd': No such file or directory
Test: tree-hugger passes
Change-Id: Ib2bc1739cac088af3e9ef2e0482f2536dad8fb8c
some sysfs node may not be ready before boot_complete:
e.g. we are delaying bw_hwmon in favor of boot time
Bug: 80321544
Test: Boot and check powerhint handling
Change-Id: I8d2cfa332d9cf9fbafdfa3f48ffff4105c6bcaae
Test:
- delete file /persist/battery/qcom_charge_full
- adb logcat to check code flow related health@2.0
- adb bugreport
- no "avc: denied" on health vendor service
- check learned capacity in both
/sys/class/power_supply/bms/charge_full
/persist/battery/qcom_charge_full
-- decrease /sys/class/power_supply/bms/charge_full
to check backup to /persist/battery/qcom_charge_full
-- increase /sys/class/power_supply/bms/charge_full
to check restore from /persist/battery/qcom_charge_full
(simluate the reset condition)
Bug: 78883741
Change-Id: Ib17bc0938d3a4b78376140a8a1008b4fc82220af
Signed-off-by: Jack Wu <wjack@google.com>
We saw a similar denial on Marlin where thermal_engine was trying to
access /dev/diag. This ports that fix to Wahoo to try to fix its
denial.
Bug: 78019417
Test: Build policy.
Change-Id: I3702e705ea4f99a58f4b96008d236d33ecd8045c
(cherry picked from commit 200ded4ed8)
As property service is part of init, and if init is busy with built-in
command e.g. fsck, the propety_set() won't go through until the built-in
command is finished.
Move the start of hwservicemanager earlier and wait for its done after
launches bootanim and its dependencies (there is not wait time during
boot but the command is as a safeguard).
Bug: 74437368
Test: boot with simulated long fsck and bootanim shown early
Test: boot see 'start_waiting_for_property("hwservicemanager.ready", "true"): already set'
Change-Id: Iab4b857a51e0e6b8b059d063c1f0d65a0e987622
Bug: 76220544
Test:
No denial error found for selinux
Signed-off-by: Ecco Park <eccopark@google.com>
Change-Id: If379812a7c8df7fd84beec6734313459938d540e
If sensorservice goes down while folio_daemon is running, folio_daemon
will gracefully exit and restart. If sensorservice remains down while
folio_daemon is starting, it will eventually crash due to the way the
ASensorManager_getInstanceForPackage() API behaves (i.e., it will exit
with a SIGABRT after five minutes of waiting). We can reduce the
chance of this happening by ensuring folio_daemon is only started when
its dependent services are explicitly started as well.
Note that this cannot guarantee that folio_daemon will *never* crash due
to SIGABRT, since there is no variant of
ASensorManager_getInstanceForPackage() that allows for graceful handling
of the service timeout. Events that negatively affect the availability
of sensors are outside the control of folio_daemon.
Bug: 73555660
Test: loaded on walleye and tested with `stop` and `start` commands
Change-Id: I65e1b72745719f2540bff7cab8e556725486bcad
(cherry picked from commit 9ebb33ed13)