phhusson / treble_experimentations

Notes about tinkering with Android Project Treble
3.4k stars 660 forks source link

Notification LED does not work (Galaxy S9 - starqltechn) #2093

Open lynixfur opened 2 years ago

lynixfur commented 2 years ago

Seems the Samsung S9 is using the wrong LED Light HAL. In this result the S9 cannot work with the LED notification.

Using Android 12 PHH

Logs Before Permissive:

12-04 10:38:18.511   915   915 E SELinux : avc:  denied  { find } for interface=vendor.samsung.hardware.light::ISecLight sid=u:r:system_server:s0 pid=1972 scontext=u:r:system_server:s0 tcontext=u:object_r:default_android_hwservice:s0 tclass=hwservice_manager permissive=0
12-04 10:38:18.515  1972  2226 E LightsService: Light requested not available on this device. 3

Logs After Permissive:

12-04 10:39:59.232   915   915 I hwservicemanager: getTransport: Cannot find entry vendor.samsung.hardware.light@2.0::ISecLight/default in either framework or device manifest.\
`
[lshal.txt](https://github.com/phhusson/treble_experimentations/files/7657247/lshal.txt)
``

Error Command : 

phhgsi_arm64_ab:/ # logcat -b all -c phhgsi_arm64_ab:/ # setprop ctl.restart vendor.light-qti Failed to set property 'ctl.restart' to 'vendor.light-qti'. See dmesg for error reason. 1|phhgsi_arm64_ab:/ # logcat -b all -d > /sdcard/log.txt phhgsi_arm64_ab:/ #



[11513.022914] type=1327 audit(1638753586.338:187366): proctitle="system_server"
[11513.023087] audit: audit_lost=699467 audit_rate_limit=5 audit_backlog_limit=64
[11513.023224] audit: rate limit exceeded
[11513.534086] init: Control message: Could not find 'vendor.light-qti' for ctl.restart from pid: 18802 (setprop ctl.restart vendor.light-qti)
[11514.224865] type=1400 audit(1638753587.538:187374): avc: denied { getattr } for comm="Binder:2095_2" scontext=u:r:system_server:s0 tcontext=u:r:system_app:s0 tclass=process permissive=0
[11514.225561] type=1300 audit(1638753587.538:187374): arch=c00000b7 syscall=63 success=no exit=-13 a0=c8 a1=7075fa59f0 a2=fff a3=0 items=0 ppid=1801 auid=4294967295 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=(none) ses=4294967295 comm="Binder:2095_2" exe="/system/bin/app_process64" subj=u:r:system_server:s0 key=(null)
[11514.226081] type=1327 audit(1638753587.538:187374): proctitle="system_server"
[11514.226276] type=1320 audit(1638753587.538:187374):
[11514.256770] audit: audit_lost=699496 audit_rate_limit=5 audit_backlog_limit=64
[11514.256950] type=1400 audit(1638753587.568:187375): avc: denied { getattr } for comm="Binder:2095_2" scontext=u:r:system_server:s0 tcontext=u:r:system_app:s0 tclass=process permissive=0
[11514.257291] audit: rate limit exceeded
lynixfur commented 2 years ago

lshal.txt log.txt

phhusson commented 2 years ago

What does lightsctl report?

On December 6, 2021 2:21:09 AM GMT+01:00, Lynix @.***> wrote:

Seems the Samsung S9 is using the wrong LED Light HAL. In this result the S9 cannot work with the LED notification.

Using Android 12 PHH

Logs Before Permissive:

12-04 10:38:18.511   915   915 E SELinux : avc:  denied  { find } for interface=vendor.samsung.hardware.light::ISecLight sid=u:r:system_server:s0 pid=1972 scontext=u:r:system_server:s0 tcontext=u:object_r:default_android_hwservice:s0 tclass=hwservice_manager permissive=0
12-04 10:38:18.515  1972  2226 E LightsService: Light requested not available on this device. 3

Logs After Permissive:

12-04 10:39:59.232   915   915 I hwservicemanager: getTransport: Cannot find entry ***@***.***::ISecLight/default in either framework or device manifest.\
`
[lshal.txt](https://github.com/phhusson/treble_experimentations/files/7657247/lshal.txt)
``

Error Command : 

phhgsi_arm64_ab:/ # logcat -b all -c phhgsi_arm64_ab:/ # setprop ctl.restart vendor.light-qti Failed to set property 'ctl.restart' to 'vendor.light-qti'. See dmesg for error reason. 1|phhgsi_arm64_ab:/ # logcat -b all -d > /sdcard/log.txt phhgsi_arm64_ab:/ #



[11513.022914] type=1327 audit(1638753586.338:187366): proctitle="system_server"
[11513.023087] audit: audit_lost=699467 audit_rate_limit=5 audit_backlog_limit=64
[11513.023224] audit: rate limit exceeded
[11513.534086] init: Control message: Could not find 'vendor.light-qti' for ctl.restart from pid: 18802 (setprop ctl.restart vendor.light-qti)
[11514.224865] type=1400 audit(1638753587.538:187374): avc: denied { getattr } for comm="Binder:2095_2" scontext=u:r:system_server:s0 tcontext=u:r:system_app:s0 tclass=process permissive=0
[11514.225561] type=1300 audit(1638753587.538:187374): arch=c00000b7 syscall=63 success=no exit=-13 a0=c8 a1=7075fa59f0 a2=fff a3=0 items=0 ppid=1801 auid=4294967295 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=(none) ses=4294967295 comm="Binder:2095_2" exe="/system/bin/app_process64" subj=u:r:system_server:s0 key=(null)
[11514.226081] type=1327 audit(1638753587.538:187374): proctitle="system_server"
[11514.226276] type=1320 audit(1638753587.538:187374):
[11514.256770] audit: audit_lost=699496 audit_rate_limit=5 audit_backlog_limit=64
[11514.256950] type=1400 audit(1638753587.568:187375): avc: denied { getattr } for comm="Binder:2095_2" scontext=u:r:system_server:s0 tcontext=u:r:system_app:s0 tclass=process permissive=0
[11514.257291] audit: rate limit exceeded

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/phhusson/treble_experimentations/issues/2093
lynixfur commented 2 years ago

lightsctl reports GOT TYPE BACKLIGHT

phhusson commented 2 years ago

OK, what does find /sys/class/lights | xargs ls -lZd report?

On December 6, 2021 11:57:46 AM GMT+01:00, Lynix @.***> wrote:

lightsctl reports GOT TYPE BACKLIGHT

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/phhusson/treble_experimentations/issues/2093#issuecomment-986663767

lynixfur commented 2 years ago

It returns : phhgsi_arm64_ab:/ # find /sys/class/lights | xargs ls -lZd find: '/sys/class/lights': No such file or directory drwxr-xr-x 30 root root u:object_r:rootfs:s0 4096 2018-02-22 03:09 . phhgsi_arm64_ab:/ #

lynixfur commented 2 years ago

130|phhgsi_arm64_ab:/ # ls /sys/class/leds led_b led_g led_r led_w leds-sec1 mmc0:: torch-sec1

(I think the path is incorrect)

PlatonShubin commented 2 years ago

Hello, I have a similar issue on my Doogee S88Pro with a treble GSI. The indication works but I get quite many SELinux warnings and errors in the log which might be causing a bit of lag. My device is not even close to Samsung so the warning is quite strange. Here in the logcat:

02-11 20:13:09.053   347   347 E SELinux : avc:  denied  { find } for interface=vendor.samsung.hardware.light::ISecLight sid=u:r:system_server:s0 pid=1438 scontext=u:r:system_server:s0 tcontext=u:object_r:default_android_hwservice:s0 tclass=hwservice_manager permissive=0
02-11 20:13:09.053   347   347 E SELinux : avc:  denied  { find } for interface=vendor.samsung.hardware.light::ISehLight sid=u:r:system_server:s0 pid=1438 scontext=u:r:system_server:s0 tcontext=u:object_r:default_android_hwservice:s0 tclass=hwservice_manager permissive=0

And even worse is this (happens 2-3 times a second):

02-11 20:09:17.906  1438  1438 W Binder:1438_1B: type=1400 audit(0.0:450807): avc: denied { getattr } for scontext=u:r:system_server:s0 tcontext=u:r:untrusted_app:s0:c237,c256,c512,c768 tclass=process permissive=0
02-11 20:09:18.038  1438  1438 W Binder:1438_1B: type=1400 audit(0.0:450808): avc: denied { getattr } for scontext=u:r:system_server:s0 tcontext=u:r:untrusted_app:s0:c237,c256,c512,c768 tclass=process permissive=0
02-11 20:09:19.650  1438  1438 W Binder:1438_1B: type=1400 audit(0.0:450809): avc: denied { getattr } for scontext=u:r:system_server:s0 tcontext=u:r:untrusted_app:s0:c149,c256,c512,c768 tclass=process permissive=0
02-11 20:09:19.650  1438  1438 W Binder:1438_B: type=1400 audit(0.0:450810): avc: denied { getattr } for scontext=u:r:system_server:s0 tcontext=u:r:untrusted_app_29:s0:c172,c256,c512,c768 tclass=process permissive=0

I also have the leds under another directory:

S88Pro:/ # ls -la /sys/class/lights
ls: /sys/class/lights: No such file or directory
1|S88Pro:/ # ls -la /sys/class/leds/
total 0
drwxr-xr-x  2 root root 0 2022-02-12 05:20 .
drwxr-xr-x 93 root root 0 2022-02-12 05:20 ..
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 blue -> ../../devices/platform/leds-mt65xx/leds/blue
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 green -> ../../devices/platform/leds-mt65xx/leds/green
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 lcd-backlight -> ../../devices/platform/leds-mt65xx/leds/lcd-backlight
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 mt6370_pmu_bled -> ../../devices/platform/11017000.i2c/i2c-5/5-0034/mt6370_pmu_bled/leds/mt6370_pmu_bled
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 mt6370_pmu_led1 -> ../../devices/platform/11017000.i2c/i2c-5/5-0034/mt6370_pmu_rgbled/leds/mt6370_pmu_led1
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 mt6370_pmu_led2 -> ../../devices/platform/11017000.i2c/i2c-5/5-0034/mt6370_pmu_rgbled/leds/mt6370_pmu_led2
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 mt6370_pmu_led3 -> ../../devices/platform/11017000.i2c/i2c-5/5-0034/mt6370_pmu_rgbled/leds/mt6370_pmu_led3
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 mt6370_pmu_led4 -> ../../devices/platform/11017000.i2c/i2c-5/5-0034/mt6370_pmu_rgbled/leds/mt6370_pmu_led4
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 red -> ../../devices/platform/leds-mt65xx/leds/red
lrwxrwxrwx  1 root root 0 2022-02-12 05:20 vibrator -> ../../devices/platform/odm/odm:vibrator@0/leds/vibrator

Is there any workaround for me? Maybe I can edit something somewhere so it just stops all this flood?