I think that due to the way selinux rules are setup, atrace can talk to HAL modules only when run as root via shell.My expectation is that today neither Traceur (with or without perfetto enabled) nor perfetto to be able to poke hal modules because there is no rule in atrace.te that allows that.If you want perfetto/Traceur to be able to poke at the Face HAL, you need a change like this https://android-review.googlesource.com/c/platform/system/sepolicy/+/961857It works only when running atrace as root via shell because in that case you are using the selinux shell (or su) domain that is allowed to talk to all most HAL interfaces.TBH there is a general problem here with HAL interfaces and non-root tracing. We just hit a very similar problem with camera, where the camera team wants to see camera HAL events via Traceur and perfetto and they cannot.