Support in other languages: 
Reply
802.11n
sinanju
Posts: 236
Registered: ‎12-09-2011
Location: US
0

A1 WiFi Reboot - Gathering Data

[ Edited ]

I'd like to get a bug report submitted for the wifi-related reboot many have been suffering from.  If you've experienced this issue, please try to explain the circumstances of it as best you can.

 

If Lenovo recognizes a problem as pervasive, a reaction mechanism they call a "Wind Chill" kicks in and more folks, deeper in the organization get involved.  If, as I suspect, the issue pervasive, gathering the input into one place may make it more obvious.  This, apparently, has happened with the GPS issue.  Once there's enough data, I'll submit a bug over at code.google.com, post it in the reported bugs thread, and we can start voting it up. 

 

I'll start:

 

If I have WiFi sleep policy set to always on and manage the wifi state myself with the Beautiful Widgets WiFi toggle, I don't crashes.  I do get crashes if:

 

  • WiFi sleep policy is set to sleep after 15 minutes or never while plugged in
  • I turn off the tablet
  • Wait a few minutes

At that point, I'll often see the Lenovo logo pop up after a few minutes due to a reboot.  Once running again, in at least two circumstances, I've started seeing Force Close messages from android.process.acore. The only way I've been able to get rid of that is by restoring the tablet from backup.  Googling that issue suggests its a Contacts sync issue -- perhaps the crash caused corruption -- and if I see it again, I'll try clearing my contacts database and resyncing it.

 

I think I've also experienced one crash when manually managing the state when I turned off WiFi and also turned off the screen before WiFi was fully down.

 

Please post your experiences.

802.11n
sinanju
Posts: 236
Registered: ‎12-09-2011
Location: US
0

Re: A1 WiFi Reboot - Gathering Data

If your tablet is rooted, you can grab a copy of /proc/last_kmsg after a reboot from a crash.  Here's one from my most recent crash:

802.11n
sinanju
Posts: 236
Registered: ‎12-09-2011
Location: US

Re: A1 WiFi Reboot - Gathering Data

I called support on this and they want to RMA my tablet.  I suggested that other folks have been having this issue, but the support person I spoke to says its the first they've heard of it. 

 

If you're having this problem, you need to call support and report it.  +1 877 453 6686

 

 

Token Ring
tinybeetle
Posts: 190
Registered: ‎11-11-2011
Location: Largo, FL
0

Re: A1 WiFi Reboot - Gathering Data


sinanju wrote:

I called support on this and they want to RMA my tablet.  I suggested that other folks have been having this issue, but the support person I spoke to says its the first they've heard of it. 

 

If you're having this problem, you need to call support and report it.  +1 877 453 6686

 

 


Unbelievable, calling now.

802.11n
sinanju
Posts: 236
Registered: ‎12-09-2011
Location: US
0

Re: A1 WiFi Reboot - Gathering Data

I posted a link to a bug report @ code.google.com in the central bug thread.  Here's that link: Issue 24745

802.11n
sinanju
Posts: 236
Registered: ‎12-09-2011
Location: US

Re: A1 WiFi Reboot - Gathering Data

[ Edited ]

If you can grab the contents of /proc/last_kmsg, perhaps we can compare notes.  Your comments in the bug report may point to another error.  That said, changes in the power status do, through the WiFi sleep policy, cause changes in the WiFi status. Here's where things start to go south in my crash:

 

dhd_prot_attach: kmalloc failed
dhd_prot_attach failed
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c0004000
[00000000] *pgd=00000000
Internal error: Oops: 817 [#1] PREEMPT
last sysfs file: /sys/devices/platform/rfkill-fxn/rfkill/rfkill0/state
Modules linked in: dhd(+) [last unloaded: dhd]

 

dhd_prot_attach is part of the Broadcom 802.11 driver.  The driver appears to be a backport -- perhaps a bad one.  We have kernel version 2.6.35, but this suggests it became part of the kernel at 2.6.37: Link

Paper Tape
duhmojo
Posts: 7
Registered: ‎02-26-2013
Location: Canada
0

Re: A1 WiFi Reboot - Gathering Data

I know it's been a year, but I have 8 A1s I've been doing development and testing with since early 2013. We're experiencing some issues when unloading the wifi driver. The Android OS will show this symptom when you try to disable wifi, and it takes a while to complete. If you reenable, it'll fail. You then try reenabling and it comes back up.

 

Here's the Logcat when wifi fails to unload/stop correctly. If you click Wi-Fi from Settings to enable it, you'll see it thinks wifi is already on. (probably because it didn't stop/unload correctly) Then there is a "Disabling interface" when I clicked stop wifi in Settings, then it all loads correctly when I click Wi-Fi one last time.

 

This has been a major issue for us. We actually need to programmatically stop and start wifi, but its been a major headache...

 

03-05 23:33:54.914: D/WifiHW(1106): >>> wifi_load_driver
03-05 23:33:54.914: D/WifiHW(1106): <<< wifi_load_driver loaded already, wifi power is ON
03-05 23:33:54.914: D/WifiHW(1106): Starting supplicant.......
03-05 23:33:54.914: D/WifiHW(1106): <<< ensure_config_file_exists, access
03-05 23:33:54.914: I/WifiHW(1106): ++ctl.start <wpa_supplicant>
03-05 23:33:54.914: I/WifiHW(1106): --ctl.start <wpa_supplicant>
03-05 23:33:54.929: D/WifiHW(1106): Starting supplicant successfully, count: 199
03-05 23:33:54.937: E/WifiHW(1106): Not connected to wpa_supplicant - "BLACKLIST clear" command dropped.
03-05 23:33:54.937: D/WifiHW(1106): Starting connect to supplicant...
03-05 23:33:54.937: D/WifiHW(1106): WIFI_TEST_INTERFACE: "eth0", iface: "eth0"
03-05 23:33:54.937: D/WifiHW(1106): IFACE_DIR: "/data/misc/wifi/sockets", iface: "eth0"
03-05 23:33:54.937: D/WifiHW(1106): ifname = eth0
03-05 23:33:54.960: E/wpa_supplicant(3463): ioctl[SIOCGIFFLAGS]
03-05 23:33:54.968: E/wpa_supplicant(3463): ioctl[SIOCSIWPMKSA]
03-05 23:33:54.968: E/wpa_supplicant(3463): ioctl[SIOCSIWMODE]
03-05 23:33:55.000: E/wpa_supplicant(3463): ioctl[SIOCGIRANGE]
03-05 23:33:55.000: E/wpa_supplicant(3463): ioctl[SIOCGIWMODE]
03-05 23:33:55.000: E/wpa_supplicant(3463): ioctl[SIOCSIWAP]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODEEXT]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODE]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODEEXT]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODE]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODEEXT]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODE]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODEEXT]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWENCODE]
03-05 23:33:55.039: E/wpa_supplicant(3463): Failed to disable WPA in the driver.
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCGIWMODE]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCSIWAP]
03-05 23:33:55.039: E/wpa_supplicant(3463): ioctl[SIOCGIFFLAGS]
03-05 23:34:04.953: E/WifiHW(1106): Connecting supplicant error,wpa_ctrl_attach(monitor_conn)error
03-05 23:34:04.953: D/WifiStateTracker(1106): Reset connections and stopping DHCP
03-05 23:34:05.054: D/dalvikvm(1227): GC_EXPLICIT freed 105K, 44% free 3613K/6343K, external 19698K/21322K, paused 36ms
03-05 23:34:05.953: D/WifiStateTracker(1106): Disabling interface
03-05 23:34:05.953: E/WifiHW(1106): Not connected to wpa_supplicant - "DRIVER START" command dropped.
03-05 23:34:05.953: D/WifiHW(1106): Enter stop supplicant
03-05 23:34:05.953: D/WifiHW(1106): Supplicant have stopped successfully
03-05 23:34:05.953: D/WifiStateTracker(1106): Reset connections and stopping DHCP
03-05 23:34:06.984: D/WifiStateTracker(1106): Disabling interface
03-05 23:34:06.984: D/WifiHW(1106): >>> wifi_unload_driver
03-05 23:34:06.984: D/WifiHW(1106): >>> rmmod
03-05 23:34:06.984: D/WifiHW(1106): Unable to unload driver module "dhd": No such file or directory
03-05 23:34:06.984: I/WifiHW(1106): >>> set_wifi_power: 0
03-05 23:34:06.984: I/WifiHW(1106): <<< set_wifi_power
03-05 23:34:07.085: D/WifiHW(1106): <<< rmmod= -1
03-05 23:34:07.085: E/WifiService(1106): Failed to unload Wi-Fi driver.
03-05 23:34:09.953: D/WifiHW(1106): Starting connect to supplicant...
03-05 23:34:09.953: E/WifiHW(1106): Supplicant not running, cannot connect
03-05 23:34:10.437: D/WifiHW(1106): >>> wifi_load_driver
03-05 23:34:10.437: D/WifiHW(1106): >>> check_driver_loaded
03-05 23:34:10.437: D/WifiHW(1106): Driver is loaded, get wlan.driver.status status: ok
03-05 23:34:10.437: D/WifiHW(1106): open "/proc/modules"
03-05 23:34:10.437: D/WifiHW(1106): get wlan.driver.status status: ok
03-05 23:34:10.437: D/WifiHW(1106): <<< check_driver_loaded
03-05 23:34:10.437: D/WifiHW(1106): >>> insmod, filename= "/system/proprietary/wifi/dhd.ko", args= "firmware_path=/system/proprietary/wifi/rtecdc.bin nvram_path=/system/proprietary/wifi/nvram.txt"
03-05 23:34:10.437: I/WifiHW(1106): >>> set_wifi_power: 1
03-05 23:34:10.460: I/WifiHW(1106): <<< set_wifi_power
03-05 23:34:11.179: D/Tethering(1106): interfaceAdded: eth0
03-05 23:34:11.179: D/Tethering(1106): isWifi() regex: wl0.1, iface: eth0
03-05 23:34:11.179: D/Tethering(1106): isUsb() regex: usb0, iface: eth0
03-05 23:34:11.179: D/Tethering(1106): eth0 is not a tetherable iface, ignoring
03-05 23:34:11.179: D/NetdConnector(1106): RCV <- {600 Iface added eth0}
03-05 23:34:11.187: D/WifiHW(1106): <<< insmod, ret= 0
03-05 23:34:12.187: D/WifiHW(1106): #### wifi_load_driver, load firmware O.K ####
03-05 23:34:12.187: D/WifiHW(1106): get wlan.driver.status status: ok
03-05 23:34:12.187: D/WifiHW(1106): <<< wifi_load_driver,ok
03-05 23:34:12.187: D/WifiHW(1106): Starting supplicant.......
03-05 23:34:12.187: D/WifiHW(1106): <<< ensure_config_file_exists, access
03-05 23:34:12.195: I/WifiHW(1106): ++ctl.start <wpa_supplicant>
03-05 23:34:12.195: I/WifiHW(1106): --ctl.start <wpa_supplicant>
03-05 23:34:12.195: D/WifiHW(1106): Starting supplicant successfully, count: 199
03-05 23:34:12.195: E/WifiHW(1106): Not connected to wpa_supplicant - "BLACKLIST clear" command dropped.
03-05 23:34:12.210: E/WifiHW(1106): Not connected to wpa_supplicant - "BLACKLIST clear" command dropped.
03-05 23:34:12.210: D/WifiHW(1106): Starting connect to supplicant...
03-05 23:34:12.210: D/WifiHW(1106): WIFI_TEST_INTERFACE: "eth0", iface: "eth0"
03-05 23:34:12.210: D/WifiHW(1106): IFACE_DIR: "/data/misc/wifi/sockets", iface: "eth0"
03-05 23:34:12.210: D/WifiHW(1106): ifname = eth0
03-05 23:34:12.312: D/WifiHW(1106): Retry to wpa_ctrl_open
03-05 23:34:12.312: D/WifiHW(1106): Connect to supplicant successfully
03-05 23:34:12.328: V/WifiStateTracker(1106): Connection to supplicant established, state=DISCONNECTED
03-05 23:34:12.343: V/WifiMonitor(1106): Event [CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00]
03-05 23:34:12.343: V/WifiStateTracker(1106): Changing supplicant state: DISCONNECTED ==> SCANNING
03-05 23:34:12.929: V/WifiMonitor(1106): Event [CTRL-EVENT-STATE-CHANGE id=-1 state=1 BSSID=00:00:00:00:00:00]
03-05 23:34:12.929: V/WifiStateTracker(1106): Changing supplicant state: SCANNING ==> INACTIVE
03-05 23:34:14.953: D/WifiHW(1106): Starting connect to supplicant...
03-05 23:34:14.953: D/WifiHW(1106): WIFI_TEST_INTERFACE: "eth0", iface: "eth0"
03-05 23:34:14.953: D/WifiHW(1106): IFACE_DIR: "/data/misc/wifi/sockets", iface: "eth0"
03-05 23:34:14.953: D/WifiHW(1106): ifname = eth0
03-05 23:34:14.953: D/WifiHW(1106): Connect to supplicant successfully
03-05 23:34:14.960: V/WifiStateTracker(1106): Connection to supplicant established, state=INACTIVE