Vibrator not working for 2nd user after Android was used. "Hardware service manager has died"

REPRODUCIBILITY: 100% (always)
OSVERSION: 4.5.0.19
HARDWARE: Sony Xperia XA2 - h3113 - h3113 - 1.0.0.12 - armv7hl
UI LANGUAGE: English (UK) (user: en_GB, os: en_GB.utf8)
REGRESSION: yes (since: 4.4.0.68 - arm)

DESCRIPTION:

Vibrator stops working for secondary user, after Andemphasised textroid app support was started and stopped in primary user.

PRECONDITIONS:

Android support, secondary user

STEPS TO REPRODUCE:

  1. Switch from secondary user to primary user (defaultuser)
  2. Start Android App Support
  3. Stop AAS
  4. Switch back to secondary user

EXPECTED RESULTS:

Vibrator works when hitting the screen by typing or by entering PIN code, etc.

ACTUAL RESULTS:

Vibrator is disabled: pin code, incl. call, text typing.

MODIFICATIONS:

  • Patchmanager: yes
  • OpenRepos: yes
  • Chum: yes
  • Other: none specified

ADDITIONAL INFORMATION:

Device Owner User: defaultuser
Home Encryption: enabled


the initial version of this bug report was created using Bugger 0.9.9+git3

I used the collect-logs.sh script from https://docs.sailfishos.org/Support/Help_Articles/Collecting_Logs/Collect_Basic_Logs/.

I collected the logs twice:
Once without using Android in the process of switching users.
Once with using Android in the process of switching users.

Then, I did search for vibra in both directories where I uncompressed the respective logs.

grep -Rin vibra /uncompressed_logs_path/*

Here are extracts of the very long outputs:

Present in both situations:

./prob_vibra/journal:534:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_factvar:129] $com.nokia.policy.vibra_mute: up-to-date (0 > 479)
./prob_vibra/journal:558:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_factvar:129] $com.nokia.policy.vibra_mute: up-to-date (0 > 0)
./prob_vibra/journal:840:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_factvar:129] $com.nokia.policy.vibra_mute: up-to-date (0 > 482)
./prob_vibra/journal:864:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_factvar:129] $com.nokia.policy.vibra_mute: up-to-date (0 > 0)
./prob_vibra/journal:957:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_factvar:129] $com.nokia.policy.vibra_mute: up-to-date (0 > 485)

./prob_vibra/journal:559:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_target:251] => vibra_actions already up-to-date
./prob_vibra/journal:865:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_target:251] => vibra_actions already up-to-date

./prob_vibra/journal:557:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_target:207] checking target vibra_actions
./prob_vibra/journal:863:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_target:207] checking target vibra_actions

./prob_vibra/journal:578:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_target:231] vibra_actions: up-to-date (0 > 479)
./prob_vibra/journal:884:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: [dres_check_target:231] vibra_actions: up-to-date (0 > 482)
./prob_vibra/journal:1599:Mar 21 06:46:52 XperiaXA2 ohmd[2845]: [dres_check_target:231] vibra_actions: up-to-date (0 > 485)
./prob_vibra/journal:2229:Mar 21 06:47:12 XperiaXA2 ohmd[2845]: [dres_check_target:231] vibra_actions: up-to-date (0 > 489)
./prob_vibra/journal:2616:Mar 21 06:47:13 XperiaXA2 ohmd[2845]: [dres_check_target:231] vibra_actions: up-to-date (0 > 492)
./prob_vibra/journal:2905:Mar 21 06:47:20 XperiaXA2 ohmd[2845]: [dres_check_target:231] vibra_actions: up-to-date (0 > 496)

./prob_vibra/journal:378:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: resource_owner: { resource: ‘vibra’, owner: ‘nobody’, mode: ‘shared’, group: ‘idle’ }
./prob_vibra/journal:684:Mar 21 06:46:42 XperiaXA2 ohmd[2845]: resource_owner: { resource: ‘vibra’, owner: ‘nobody’, mode: ‘shared’, group: ‘idle’ }

./prob_vibra/logcat:141:03-21 05:45:50.169 3095 3095 D vndksupport: Loading /vendor/lib64/hw/android.hardware.vibrator@1.0-impl.so from current namespace instead of sphal namespace.

./prob_vibra/logcat:191:03-21 05:45:50.196 3095 3095 D : Vibrator using timed_output

./prob_vibra/logcat:192:03-21 05:45:50.197 3095 3095 I ServiceManagement: Removing namespace from process name android.hardware.vibrator@1.0-service to vibrator@1.0-se.

./prob_vibra/logcat:194:03-21 05:45:50.210 3095 3095 I android.hardware.vibrator@1.0-service: Registration complete for android.hardware.vibrator@1.0::IVibrator/default.

./prob_vibra/ps:533: 3095 system {vibrator@1.0-se} /vendor/bin/hw/android.hardware.vibrator@1.0-service

This appears only in broken vibra logs:

./prob_vibra/journal:356:Mar 21 06:46:42 XperiaXA2 alienaudioservice[7101]: [AlienAudioService] vibrator: Added default_alien
./prob_vibra/journal:1631:Mar 21 06:46:54 XperiaXA2 init: Control message: Could not find 'android.hardware.vibrator@1.3::IVibrator/default’ for ctl.interface_start from pid: 9 (/system/bin/hwservicemanager)
./prob_vibra/journal:2246:Mar 21 06:47:12 XperiaXA2 alienaudioservice[7101]: [AlienAudioService] vibrator: Hardware service manager has died.

My very basic understanding would be that Android cannot find/use something related to vibra, then “Hardware service manager has died”, then vibra isn’t usable anymore.

well, very basic understanding…
Any hints or other ways to explore?
Thanks

1 Like