#12670 closed defect (fixed)

Wireless network disappears after connection failure

Reported by: dsd Owned by: dsd
Priority: normal Milestone: 13.2.0
Component: network manager Version: not specified
Keywords: Cc:
Blocked By: Blocking:
Deployments affected: Action Needed: test in build
Verified: no

Description

In 13.2.0 (and maybe 13.1.0?) we have had some reports of the XO disconnecting from the access point for no obvious reason.

I think I have seen this a number of times, specifically on my XO-4 B1 when connected to a specific AP at my office.

Time to investigate further

Attachments (1)

wpa_supplicant.log (91.4 KB) - added by dsd 19 months ago.
wpa_supplicant debug log

Download all attachments as: .zip

Change History (10)

Changed 19 months ago by dsd

wpa_supplicant debug log

comment:1 Changed 19 months ago by dsd

I will check, but I think I trust what the above log says:

  1. The AP kicked me off
  2. wpa_supplicant blacklisted the AP temporarily, realised it had no other candidate networks to connect to, so unblacklisted it
  3. wpa_supplicant tried to associate again, the AP rejected us
  4. wpa_supplicant sat idle

If the above is true (it probably is - this bug only appears on one certain AP), the behaviour up to this point is reasonable. The bad thing is that from this point onwards, my AP is no longer presented in the NM scan results, even though it is no longer on the blacklist.

comment:2 Changed 19 months ago by dsd

Yes, the 8686 hardware sent a "link lost" event, and when it tried to associate again, the hardware says that association failed with code 1 (association denied by AP for unspecified reason).

d-feet shows that my network (now invisible in NM network list) is still exposed in the wpa_supplicant dbus object space.

Restarting NetworkManager makes it show up again.

comment:3 Changed 19 months ago by dsd

Through inspection, I think the bug is in NetworkManager nm-device-wifi.c link_timeout_cb

	/* Remove whatever access point we used to be connected to from the list
	 * since it failed and might no longer be visible.  If it's actually still
	 * there, we'll find it in the next scan.
	 */
	if (priv->current_ap) {
		ap = priv->current_ap;
		priv->current_ap = NULL;
	} else
		ap = nm_device_wifi_get_activation_ap (self);

	if (ap)
		remove_access_point (self, ap);

I think the first comment there is not totally correct, and you can see at the end that the AP is removed from the list via remove_access_point.

comment:4 Changed 19 months ago by dsd

  • Action Needed changed from diagnose to communicate

comment:5 Changed 19 months ago by dsd

  • Summary changed from Spurious wifi disconnects to Wireless network disappears after connection failure

comment:7 Changed 19 months ago by dsd

  • Action Needed changed from package to add to build

Fixed in NetworkManager-0.9.8.1-3.git20130514.fc18

comment:8 Changed 18 months ago by dsd

  • Action Needed changed from add to build to test in build

Test in 13.2.0 build 7.

comment:9 Changed 18 months ago by dsd

  • Resolution set to fixed
  • Status changed from new to closed

This is working fine, the AP hasn't disappeared.

Note: See TracTickets for help on using tickets.