No description
Find a file
Alistair Delva 5591f12834 Use ro.boot.serialconsole to disable console services
For many years, services declaring "console" would only be started if the
console device specified by androidboot.console= was present under /dev.
However, they would also be started if the /dev/console node existed.

This fallback causes problems with newer GKI kernel images which now
hard-code "console=ttynull" via CONFIG_CMDLINE, which essentially means
/dev/console always exists, even though this console points nowhere.

It also causes problems on devices where the androidboot.console was not
the same as the kernel dmesg console ("console="), such as cuttlefish,
because those platforms could not simultaneously enable kernel logging
but disable the interactive serial console feature. The framework just
assumed both would be muxed on the same serial port. Cuttlefish had a
workaround, to use "androidboot.console=invalid" to avoid the fallback,
but this doesn't work on devices which still want to mux the kernel logs
and interactive serial console.

This change resolves the issue in a better way, by introducing a new
boolean property called "androidboot.serialconsole". Setting this to "0"
will disable the console services, regardless of whether the
/dev/console or /dev/${ro.boot.console} devices exist. Older kernels
and bootloaders don't need to set this and can rely on the old behavior
in init, but bootloaders booting newer kernels must set it to avoid the
"performance is impacted" message due to console services being started.

Bug: 266982931
Bug: 223797063
Bug: 267428635
Test: "launch_cvd" with "androidboot.console=invalid" removed;
      See the "performance is impacted" message.
Test: "launch_cvd" with "androidboot.serialconsole=0";
      The "performance is impacted" message is gone.
Change-Id: Iaad4d27ffe4df74ed49606d3cabe83483c350df4
2023-02-22 14:31:24 -08:00
bootstat bootstat.rc: remove trigger that logged post_decrypt_time_elapsed 2023-01-18 02:14:35 +00:00
cli-test [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
code_coverage Disable code_coverage.other for riscv64 2022-10-13 13:49:10 -07:00
debuggerd Recoverable GWP-ASan: Don't tell ActivityManager 2023-02-07 17:06:32 -08:00
diagnose_usb Support building diagnose_usb against musl 2021-12-16 14:04:06 -08:00
fastboot Merge "fastboot: Use copy constructor to copy fastboot match callback" 2023-02-15 19:05:55 +00:00
fs_mgr snapuserd: Use fixtures in snapuserd_test. 2023-02-14 16:59:31 -08:00
gatekeeperd hidl2aidl: conversion of gatekeeper hidl to aidl 2022-09-19 16:39:27 +00:00
healthd BatteryMonitor: report battery health from health status 2023-02-10 07:40:20 +00:00
include Remove include/backtrace symlink. 2020-10-20 12:46:14 -07:00
init Use ro.boot.serialconsole to disable console services 2023-02-22 14:31:24 -08:00
janitors Add myself to janitor owners. 2022-12-02 12:50:43 -08:00
libappfuse [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
libasyncio Set min_sdk_version 2021-12-02 09:23:42 +09:00
libbinderwrapper [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
libcrypto_utils Set min_sdk_version 2021-12-02 09:23:42 +09:00
libcutils sched_policy_test: set_sched_policy also set the cpuset policy as fallback 2023-02-01 03:06:45 +00:00
libdiskconfig Android typo fix exercise, uknown -> unknown 2023-01-09 19:13:01 +00:00
libgrallocusage Make apex_available explicit 2022-02-09 11:37:19 -08:00
libkeyutils Make libfs_mgr dependencies vendor_ramdisk_available. 2021-07-23 16:50:06 -07:00
libmodprobe Revert "libmodprobe: LPM: Load all modules in *.load with *.dep satisfied" 2023-02-06 19:36:37 +00:00
libnetutils Rewrite function declarators without prototypes 2022-06-22 16:59:22 +08:00
libpackagelistparser Promote HWASan tests to presubmit. 2022-06-17 22:18:49 +00:00
libprocessgroup libprocessgroup: Proceed if activation of an optional controller fails 2023-02-10 15:02:44 -08:00
libsparse Remove a file we haven't built since 2013. 2022-11-11 21:56:34 +00:00
libstats [TeX] Improved readability for Histogram metric APIs 2023-02-11 03:27:08 +00:00
libsuspend libsuspend: vendor_available. 2021-11-02 13:52:40 -07:00
libsync Declare the headers of the ndk_library 2022-09-08 21:59:20 +00:00
libsystem Add COLOR_MODE_DISPLAY_BT2020 to graphics header. 2022-12-01 22:25:40 -08:00
libsysutils Fix 32-bit userspace on 64-bit kernel quota2 compatibility. 2021-10-25 16:24:49 -07:00
libusbhost libusbhost: factor out frameworks descriptors -> byte[] code. 2022-01-24 13:35:20 -08:00
libutils Replace "apex_inherit" min_sdk_version 2022-12-20 16:05:54 +00:00
libvndksupport Replace #apex with #systemapi 2022-07-17 17:43:24 +09:00
llkd llkd: Disable in userdebug builds by default 2021-11-04 16:21:46 -07:00
mini_keyctl Merge "Make libmini_keyctl_static available in recovery" 2021-11-23 17:54:31 +00:00
mkbootfs mkbootfs: consistency. 2023-01-12 04:34:15 +00:00
property_service Remove dalvik.vm.usejitprofiles system property. 2022-11-25 12:27:37 +00:00
reboot [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
rootdir Fix labels on /data/system/shutdown-checkpoints/ 2023-02-22 15:57:17 +08:00
run-as [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
sdcard [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
shell_and_utilities Update shell_and_utilities docs for T. 2022-03-05 08:12:29 -08:00
storaged storaged: use correct accumulate variable for publishing disk stats 2023-02-13 15:45:20 -08:00
toolbox toolbox/modprobe: Fallback to /lib/modules/<uname> 2023-01-27 12:58:50 +00:00
trusty Add KM_SET_ATTESTATION_IDS_KM3 to enum list 2023-02-16 10:59:47 +01:00
usbd usb: migration to USB gadget AIDL 2023-01-10 11:24:36 +08:00
watchdogd [LSC] Add LOCAL_LICENSE_KINDS to system/core 2021-02-19 12:59:05 -08:00
.clang-format Add a 2 width option of clang format. 2017-03-10 13:01:39 -08:00
.clang-format-2 Move clang-formats to build. 2019-01-18 14:26:33 -08:00
.clang-format-4 Move clang-formats to build. 2019-01-18 14:26:33 -08:00
.gitignore Ignore adb/*.pyc files 2015-08-11 12:59:58 -07:00
CleanSpec.mk snapshotctl don't auto-merge. 2020-03-03 13:19:49 -08:00
METADATA Add METADATA to system/core: Apache2+BSD=NOTICE 2020-04-29 13:16:41 -07:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
OWNERS Remove baligh@ from owners. CodeShuffle done. 2020-10-17 00:28:10 +00:00
PREUPLOAD.cfg Configure rustfmt for preupload hook 2022-04-06 21:11:09 +00:00
rustfmt.toml Configure rustfmt for preupload hook 2022-04-06 21:11:09 +00:00