Merge "Send logcat over serial port instead of vsocket"
diff --git a/host_package.mk b/host_package.mk
index 223cfcf..d41ab0d 100644
--- a/host_package.mk
+++ b/host_package.mk
@@ -45,7 +45,6 @@
x86_64-linux-gnu/libgbm.so.1 \
x86_64-linux-gnu/libminijail.so \
x86_64-linux-gnu/libvirglrenderer.so.0 \
- logcat_receiver \
config_server \
tombstone_receiver \
console_forwarder \
diff --git a/shared/config/init.common.rc b/shared/config/init.common.rc
index 162da7c..135f06e 100644
--- a/shared/config/init.common.rc
+++ b/shared/config/init.common.rc
@@ -110,19 +110,16 @@
enable seriallogging
+on property:ro.boot.logcat_serial_port=*
+ chown logd log ${ro.boot.logcat_serial_port}
+ symlink ${ro.boot.logcat_serial_port} /dev/cf-logcat
+ enable seriallogging
+
+
service seriallogging /system/bin/logcat -b all -v threadtime -f /dev/cf-logcat *:V
class main
- user root
- disabled
-
-
-on property:ro.boot.vsock_logcat_port=*
- enable vsock_logcat
-
-
-service vsock_logcat /vendor/bin/vsock_logcat
- class main
- user root
+ user logd
+ group log
disabled
diff --git a/shared/device.mk b/shared/device.mk
index 1f59971..6dee675 100644
--- a/shared/device.mk
+++ b/shared/device.mk
@@ -74,7 +74,6 @@
ip_link_add \
setup_wifi \
tombstone_transmit \
- vsock_logcat \
tombstone_producer \
#
diff --git a/shared/sepolicy/vendor/bug_map b/shared/sepolicy/vendor/bug_map
index e27ddc0..889f20b 100644
--- a/shared/sepolicy/vendor/bug_map
+++ b/shared/sepolicy/vendor/bug_map
@@ -1,7 +1,6 @@
init system_lib_file dir 133444385
init system_lib_file file 133444385
kernel kernel system 130424539
-logpersist logpersist capability 132911257
platform_app radio_prop property_service 140284352
shell adbd vsock_socket 131904985
system_server system_server process 65201432
diff --git a/shared/sepolicy/vendor/file_contexts b/shared/sepolicy/vendor/file_contexts
index e46880a..0af84fd 100644
--- a/shared/sepolicy/vendor/file_contexts
+++ b/shared/sepolicy/vendor/file_contexts
@@ -49,7 +49,6 @@
/vendor/bin/usbforward u:object_r:usbforward_exec:s0
/vendor/bin/socket_forward_proxy u:object_r:socket_forward_proxy_exec:s0
/vendor/bin/socket_vsock_proxy u:object_r:socket_vsock_proxy_exec:s0
-/vendor/bin/vsock_logcat u:object_r:vsock_logcat_exec:s0
/vendor/bin/vsoc_input_service u:object_r:vsoc_input_service_exec:s0
/vendor/bin/vsoc_guest_region_e2e_test u:object_r:vsoc_guest_region_e2e_test_exec:s0
/vendor/bin/vport_trigger u:object_r:vport_trigger_exec:s0
diff --git a/shared/sepolicy/vendor/logpersist.te b/shared/sepolicy/vendor/logpersist.te
index 22e6da5..1446da1 100644
--- a/shared/sepolicy/vendor/logpersist.te
+++ b/shared/sepolicy/vendor/logpersist.te
@@ -1,6 +1,6 @@
# Output to virtual serial console. Needed because seriallogging daemon
-# runs logcat and directs its output to vportXpY or cf_logcat_pipe under
+# runs logcat and directs its output to vportXpY or ttyS2 under
# the /dev filesystem.
allow logpersist device:dir r_dir_perms;
-allow logpersist device:fifo_file ra_file_perms;
+allow logpersist serial_device:chr_file ra_file_perms;
allow logpersist virtual_serial_device:chr_file ra_file_perms;
diff --git a/shared/sepolicy/vendor/property_contexts b/shared/sepolicy/vendor/property_contexts
index 5127c67..cf5dc5b 100644
--- a/shared/sepolicy/vendor/property_contexts
+++ b/shared/sepolicy/vendor/property_contexts
@@ -8,12 +8,11 @@
ro.boot.hardware.hwcomposer u:object_r:cf_graphics_config_prop:s0 exact string
ro.boot.lcd_density u:object_r:cf_graphics_config_prop:s0 exact int
ro.boot.vsock_frames_port u:object_r:vsock_frames_port_prop:s0
-ro.boot.vsock_logcat_port u:object_r:vsock_logcat_port_prop:s0
+ro.boot.logcat_serial_port u:object_r:logcat_serial_port_prop:s0
ro.cdma.home.operator.alpha u:object_r:vendor_init_radio_prop:s0
ro.cdma.home.operator.numeric u:object_r:vendor_init_radio_prop:s0
sys.cf.ser. u:object_r:sys_cf_ser_prop:s0
vendor.ser. u:object_r:vendor_ser_prop:s0
-vendor.vsock_logcat_status u:object_r:vsock_logcat_status_prop:s0
hwc.drm.device u:object_r:cf_graphics_config_prop:s0 exact string
hwc.drm.exclude_non_hwfb_imports u:object_r:cf_graphics_config_prop:s0 exact int
hwc.drm.use_overlay_planes u:object_r:cf_graphics_config_prop:s0 exact int
diff --git a/shared/sepolicy/vendor/vendor_init.te b/shared/sepolicy/vendor/vendor_init.te
index e57bec0..3d8fcb1 100644
--- a/shared/sepolicy/vendor/vendor_init.te
+++ b/shared/sepolicy/vendor/vendor_init.te
@@ -1,6 +1,7 @@
type vendor_init_radio_prop, property_type;
type cf_graphics_config_prop, property_type;
type cf_fstab_name_prop, property_type;
+type logcat_serial_port_prop, property_type;
allow vendor_init {
audio_device
@@ -18,3 +19,5 @@
get_prop(vendor_init, cf_graphics_config_prop)
get_prop(vendor_init, cf_fstab_name_prop)
+
+get_prop(vendor_init, logcat_serial_port_prop)
diff --git a/shared/sepolicy/vendor/vsock_logcat.te b/shared/sepolicy/vendor/vsock_logcat.te
deleted file mode 100644
index 405a362..0000000
--- a/shared/sepolicy/vendor/vsock_logcat.te
+++ /dev/null
@@ -1,17 +0,0 @@
-type vsock_logcat, domain;
-type vsock_logcat_exec, exec_type, vendor_file_type, file_type;
-type vsock_logcat_port_prop, property_type;
-type vsock_logcat_status_prop, property_type;
-
-init_daemon_domain(vsock_logcat)
-
-get_prop(vsock_logcat, vsock_logcat_port_prop)
-
-set_prop(vsock_logcat, vendor_ser_prop)
-set_prop(vsock_logcat, vsock_logcat_status_prop)
-
-allow vsock_logcat device:dir w_dir_perms;
-allow vsock_logcat device:fifo_file create_file_perms;
-allow vsock_logcat kmsg_device:chr_file write;
-allow vsock_logcat self:capability net_admin;
-allow vsock_logcat self:{ socket vsock_socket } create_socket_perms_no_ioctl;