2015-10-26 21:51:00

by Julien Cubizolles

[permalink] [raw]
Subject: Re: mwifiex problem: incompatible network settings

Dan Williams <[email protected]> writes:

> On Mon, 2015-10-26 at 16:51 +0100, Julien Cubizolles wrote:
>> I can't connect anymore to my home wifi since upgrading my machine from
>> Ubuntu 15.04 to Ubuntuy 15.10. I was previously running kernel 4.3.0-rc2
>> from kernel.org without any problem. After the upgrade, and with the
>> same kernel, I couldn't connect anymore. I built 4.3.0-rc7, and the
>> problem remains. However, I can connect to the wifi access point from my
>> Android phone.
>>
>> Here are the relevant lines from syslog. Let me know if you need more
>> information.
>
> The AP uses WPA, but the driver has been told that WPA is disabled. Are
> you using wpa_supplicant (or NetworkManager, or something else?) to
> control the WiFi, and if so what version is it?

Yes, I'm using NetworkManager, version 1.0.4-ubuntu5, and I'm guessing
it's using wpa_supplicant. I deleted the configuration for this network
and created it again. The network is configured for WPA in
NetworkManager but I still get the same error message.

Thanks for your help.



2015-10-27 15:11:38

by Dan Williams

[permalink] [raw]
Subject: Re: mwifiex problem: incompatible network settings

On Mon, 2015-10-26 at 22:50 +0100, Julien Cubizolles wrote:
> Dan Williams <[email protected]> writes:
>
> > On Mon, 2015-10-26 at 16:51 +0100, Julien Cubizolles wrote:
> >> I can't connect anymore to my home wifi since upgrading my machine from
> >> Ubuntu 15.04 to Ubuntuy 15.10. I was previously running kernel 4.3.0-rc2
> >> from kernel.org without any problem. After the upgrade, and with the
> >> same kernel, I couldn't connect anymore. I built 4.3.0-rc7, and the
> >> problem remains. However, I can connect to the wifi access point from my
> >> Android phone.
> >>
> >> Here are the relevant lines from syslog. Let me know if you need more
> >> information.
> >
> > The AP uses WPA, but the driver has been told that WPA is disabled. Are
> > you using wpa_supplicant (or NetworkManager, or something else?) to
> > control the WiFi, and if so what version is it?
>
> Yes, I'm using NetworkManager, version 1.0.4-ubuntu5, and I'm guessing
> it's using wpa_supplicant. I deleted the configuration for this network
> and created it again. The network is configured for WPA in
> NetworkManager but I still get the same error message.

Ok, I think it's a problem with the driver not correctly handling the
wpa_supplicant configuration requests. Clearly wpa_supplicant is
sending WPA-enabled configuration, but the driver isn't interpreting it
correctly. I'll leave it up to the mwifiex maintainers to figure that
out though.

Dan


2015-10-27 18:55:21

by Amitkumar Karwar

[permalink] [raw]
Subject: Re: mwifiex problem: incompatible network settings

Hi Julien,

>Yes, I'm using NetworkManager, version 1.0.4-ubuntu5, and I'm guessing
>it's using wpa_supplicant. I deleted the configuration for this network
>and created it again. The network is configured for WPA in
>NetworkManager but I still get the same error message.

Looks like driver has received encryption mode as TKIP, but didn't receive WPA ie. Hence the configuration didn't match with AP. Could you share wpa_supplicant configuration file if possible? Also, check if "sme->ie" is received in mwifiex_cfg80211_assoc() routine. Enable driver debug for the test using "echo 0xffffffff > /sys/kernel/debug/mwifiex/mlan0/debug_mask" and share dmesg logs.

Regards,
Amitkumar

2015-10-27 21:45:04

by Julien Cubizolles

[permalink] [raw]
Subject: Re: mwifiex problem: incompatible network settings

Amitkumar Karwar <[email protected]> writes:

> Hi Julien,
>
>>Yes, I'm using NetworkManager, version 1.0.4-ubuntu5, and I'm guessing
>>it's using wpa_supplicant. I deleted the configuration for this network
>>and created it again. The network is configured for WPA in
>>NetworkManager but I still get the same error message.
>
> Looks like driver has received encryption mode as TKIP, but didn't
> receive WPA ie. Hence the configuration didn't match with AP. Could
> you share wpa_supplicant configuration file if possible?

Here is /etc/dbus-1/system.d/wpa_supplicant.conf, is this the one you
need ?

--8<---------------cut here---------------start------------->8---
<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="fi.epitest.hostap.WPASupplicant"/>

<allow send_destination="fi.epitest.hostap.WPASupplicant"/>
<allow send_interface="fi.epitest.hostap.WPASupplicant"/>

<allow own="fi.w1.wpa_supplicant1"/>

<allow send_destination="fi.w1.wpa_supplicant1"/>
<allow send_interface="fi.w1.wpa_supplicant1"/>
<allow receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
</policy>
<policy group="netdev">
<allow send_destination="fi.epitest.hostap.WPASupplicant"/>
<allow send_interface="fi.epitest.hostap.WPASupplicant"/>

<allow send_destination="fi.w1.wpa_supplicant1"/>
<allow send_interface="fi.w1.wpa_supplicant1"/>
<allow receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
</policy>
<policy context="default">
<deny own="fi.epitest.hostap.WPASupplicant"/>
<deny send_destination="fi.epitest.hostap.WPASupplicant"/>
<deny send_interface="fi.epitest.hostap.WPASupplicant"/>

<deny own="fi.w1.wpa_supplicant1"/>
<deny send_destination="fi.w1.wpa_supplicant1"/>
<deny send_interface="fi.w1.wpa_supplicant1"/>
<deny receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
</policy>
</busconfig>

--8<---------------cut here---------------end--------------->8---

> Also, check if "sme->ie" is received in mwifiex_cfg80211_assoc()
> routine.

Is that what the following debugging is for ? Or should I do something
else ?

> Enable driver debug for the test using "echo 0xffffffff >
> /sys/kernel/debug/mwifiex/mlan0/debug_mask" and share dmesg logs.

Please find them attached.

Regards,

Julien.


Attachments:
mwifiex-dmesg.txt.gz (24.62 kB)

2015-10-28 14:50:54

by Dan Williams

[permalink] [raw]
Subject: Re: mwifiex problem: incompatible network settings

On Tue, 2015-10-27 at 22:44 +0100, Julien Cubizolles wrote:
> Amitkumar Karwar <[email protected]> writes:
>
> > Hi Julien,
> >
> >>Yes, I'm using NetworkManager, version 1.0.4-ubuntu5, and I'm guessing
> >>it's using wpa_supplicant. I deleted the configuration for this network
> >>and created it again. The network is configured for WPA in
> >>NetworkManager but I still get the same error message.
> >
> > Looks like driver has received encryption mode as TKIP, but didn't
> > receive WPA ie. Hence the configuration didn't match with AP. Could
> > you share wpa_supplicant configuration file if possible?
>
> Here is /etc/dbus-1/system.d/wpa_supplicant.conf, is this the one you
> need ?

He actually meant the wpa_supplicant configuration file, not the
supplicant's dbus config file. But when driven by NetworkManager, there
is no supplicant configuration file.

Instead, you can find out what config NM is pushing to the supplicant by
checking the NetworkManager logs, where NM will log lines like:

NetworkManager[1163]: <info> (wlp4s0): Activation: (wifi) connection
'homewifi' has security, and secrets exist. No new secrets needed.
NetworkManager[1163]: <info> Config: added 'ssid' value 'homewifi'
NetworkManager[1163]: <info> Config: added 'scan_ssid' value '1'
NetworkManager[1163]: <info> Config: added 'key_mgmt' value 'WPA-PSK'
NetworkManager[1163]: <info> Config: added 'psk' value '<omitted>'
NetworkManager[1163]: <info> Config: added 'proto' value 'WPA RSN'
NetworkManager[1163]: <info> Config: set interface ap_scan to 1

That is almost exactly what would be in the wpa_supplicant config file.
Can you grab this info from your machine for Julien?

Dan

> --8<---------------cut here---------------start------------->8---
> <!DOCTYPE busconfig PUBLIC
> "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
> "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
> <busconfig>
> <policy user="root">
> <allow own="fi.epitest.hostap.WPASupplicant"/>
>
> <allow send_destination="fi.epitest.hostap.WPASupplicant"/>
> <allow send_interface="fi.epitest.hostap.WPASupplicant"/>
>
> <allow own="fi.w1.wpa_supplicant1"/>
>
> <allow send_destination="fi.w1.wpa_supplicant1"/>
> <allow send_interface="fi.w1.wpa_supplicant1"/>
> <allow receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
> </policy>
> <policy group="netdev">
> <allow send_destination="fi.epitest.hostap.WPASupplicant"/>
> <allow send_interface="fi.epitest.hostap.WPASupplicant"/>
>
> <allow send_destination="fi.w1.wpa_supplicant1"/>
> <allow send_interface="fi.w1.wpa_supplicant1"/>
> <allow receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
> </policy>
> <policy context="default">
> <deny own="fi.epitest.hostap.WPASupplicant"/>
> <deny send_destination="fi.epitest.hostap.WPASupplicant"/>
> <deny send_interface="fi.epitest.hostap.WPASupplicant"/>
>
> <deny own="fi.w1.wpa_supplicant1"/>
> <deny send_destination="fi.w1.wpa_supplicant1"/>
> <deny send_interface="fi.w1.wpa_supplicant1"/>
> <deny receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
> </policy>
> </busconfig>
>
> --8<---------------cut here---------------end--------------->8---
>
> > Also, check if "sme->ie" is received in mwifiex_cfg80211_assoc()
> > routine.
>
> Is that what the following debugging is for ? Or should I do something
> else ?
>
> > Enable driver debug for the test using "echo 0xffffffff >
> > /sys/kernel/debug/mwifiex/mlan0/debug_mask" and share dmesg logs.
>
> Please find them attached.
>
> Regards,
>
> Julien.
>