[krillin] Wi-Fi toggle disappears from menu when Wi-Fi disabled

Bug #1371313 reported by Tony Espy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
indicator-network (Ubuntu)
Fix Released
Critical
Antti Kaijanmäki
indicator-network (Ubuntu RTM)
Fix Released
Critical
Antti Kaijanmäki

Bug Description

Device/Image: krillin / rtm #44.

Krillin's Wi-Fi driver has a broken rfkill implementation. As such, urfkill has been updated to allow control over Wi-Fi power via libhybris.

When this mechanism is used to disable Wi-Fi on krillin, the Wi-Fi driver is unloaded as a result, with the corresponding system/NM devices going away as well. This causes the Wi-Fi enable/disable toggle to disappear from the indicator menu, making it impossible to re-enable Wi-Fi.

Related branches

Revision history for this message
Tony Espy (awe) wrote :

Here's a screenshot after Wi-Fi has been disabled.

Revision history for this message
Tony Espy (awe) wrote :

Here's a test package with the latest urfkill changes. It's required to reproduce this bug along with the following instructions:

1. Make your image writable
2. Add the following pre-start script to the urfkill upstart job ( this will live in the device tarball when released ):

pre-start script
  setprop urfkill.hybris.wlan 1
end script

3. Disable the Android wlan status script run on boot:

- - adb reboot recovery
 - adb shell

 # mkdir /mnt
 # mount /dev/block/mmcblk0p6 /mnt
 # mkdir /mnt2
 # mount /mnt/var/lib/lxc/android/system.img /mnt2
 # cd bin

 # delete or comment-out the 'setprop' command ( or just remove the file )
   in set_wlan_driver_status.sh

 # cd
 # umount /mnt2
 # umount /mnt
# sync

Note, you may get errors when trying to unmount /mnt. If this happens to me, I just make sure to sync, exit and reboot using adb.

Changed in indicator-network (Ubuntu):
importance: Undecided → Critical
assignee: nobody → Antti Kaijanmäki (kaijanmaki)
tags: added: rtm14
Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

I did this and it works in that the toggle button does not disappear. Toggling it off and on makes wifi go off and on. Toggling it again makes the wifi go off and _not_ come back.

This might be partially triggered by the device going to sleep (blanking the screen) or not. It's not 100% clear.

Changed in indicator-network (Ubuntu):
status: New → Triaged
Changed in indicator-network (Ubuntu):
status: Triaged → In Progress
tags: added: touch-2014-09-25
Revision history for this message
Tony Espy (awe) wrote :

@Jussi

Please include device/image specifics when reporting test results. That said, thanks for the report. I did some more investigation on this and it appears that in certain cases, this does work ( ie. the UI control doesn't disappear ).

For instance with a freshly flashed RTM/#49 installed ( and all the requisite Wi-Fi changes on the device side ), and 1 SIM (T-Mobile) with data disabled due to lack of credit, when I toggle airplane mode on from the menu, the toggle stays visible. If I insert a second SIM (AT&T) with a working data connection, I'm able to make the toggle disappear.

I discussed with Antti online, and he posits that this is because in some cases the indicator missed the device-removed notification, and if so, the toggle will still render.

Tony Espy (awe)
Changed in indicator-network (Ubuntu):
status: In Progress → Fix Committed
Thomas Strehl (strehl-t)
tags: added: touch-2014-10-09
removed: touch-2014-09-25
Changed in indicator-network (Ubuntu RTM):
status: New → In Progress
importance: Undecided → Critical
assignee: nobody → Antti Kaijanmäki (kaijanmaki)
Revision history for this message
Tony Espy (awe) wrote :

Note there are two ERRORS in the manual instructions detailed in comment #2 for modifying the Android container.

First after running the mount command for /mnt2, you can't cd directly to /bin. Instead: 'cd /mnt2/bin'.

Second, do NOT delete the wlan status script, instead comment out the sleep and setprop commands in the script so it looks like this:

root@ubuntu-phablet:/system/bin# cat set_wlan_driver_status.sh
#!/system/bin/sh

#sleep 2
#/system/bin/setprop wlan.driver.status ok

Changed in indicator-network (Ubuntu):
status: Fix Committed → Fix Released
Changed in indicator-network (Ubuntu RTM):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.