Like others, I'm having problems with mwifiex_usb on a Surface 2 Pro,
with the latest firmware "driver_version = mwifiex 1.0 (14.68.29.p38)"
and the latest release candidate kernel (4.3.0rc7)
Every 5-10 seconds, even while idle, I'll get a kernel message:
usb 1-2: Rx of mgmt packet failed
Under load (a big scp or a couple of kernel source tarballs will do
the trick), I get a huge amount of log spam, one message per packet:
usb 1-2: data: -ENOSR is returned
Occasionally I'll also see
usb 1-2: mwifiex_usb_submit_rx_urb: dev_alloc_skb failed
After a while, I get the dreaded firmware bad state and the only fix
is to power cycle the machine. Suspend doesn't reset the hardware, and
attempting to rmmod/modprobe mwifiex_usb will crash my machine.
usb 1-2: mwifiex_cmd_timeout_func: Timeout cmd id = 0x6, act = 0x3
usb 1-2: num_data_h2c_failure = 0
usb 1-2: num_cmd_h2c_failure = 0
usb 1-2: is_cmd_timedout = 1
usb 1-2: num_tx_timeout = 0
usb 1-2: last_cmd_index = 0
usb 1-2: last_cmd_id: 06 00 28 00 28 00 28 00 28 00
usb 1-2: last_cmd_act: 03 00 13 00 13 00 13 00 13 00
usb 1-2: last_cmd_resp_index = 4
usb 1-2: last_cmd_resp_id: 28 80 28 80 28 80 28 80 28 80
usb 1-2: last_event_index = 3
usb 1-2: last_event: 37 00 33 00 37 00 33 00 33 00
usb 1-2: data_sent=0 cmd_sent=0
usb 1-2: ps_mode=0 ps_state=0
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: Ignore scan. Card removed or firmware in bad state
usb 1-2: scan failed: -14
usb 1-2: PREP_CMD: FW is in bad state
usb 1-2: PREP_CMD: FW is in bad state
IPv6: ADDRCONF(NETDEV_UP): wlx281878fd2432: link is not ready
usb 1-2: PREP_CMD: FW is in bad state
This is reproducible all the way up to 4.3.0-rc7 which includes the patch from
http://www.spinics.net/lists/netdev/msg334367.html
that was suggested as a fix in
http://www.spinics.net/lists/linux-wireless/msg139095.html
I was able to reproduce this with after turning up debugging (echo
0xffffffff > /sys/kernel/debug/mwifiex/mlan0/debug_mask) - the
resulting trace is 1.4GB. Interested parties can contact me for a
link, or tell me what I should grep for...
--
GDB has a 'break' feature; why doesn't it have 'fix' too?
SGkgQ2hyaXMsDQoNCj4gRnJvbTogbGludXgtd2lyZWxlc3Mtb3duZXJAdmdlci5rZXJuZWwub3Jn
IFttYWlsdG86bGludXgtd2lyZWxlc3MtDQo+IG93bmVyQHZnZXIua2VybmVsLm9yZ10gT24gQmVo
YWxmIE9mIENocmlzIEt1ZXRoZQ0KPiBTZW50OiBXZWRuZXNkYXksIE9jdG9iZXIgMjgsIDIwMTUg
MTI6NDYgQU0NCj4gVG86IGxpbnV4LXdpcmVsZXNzQHZnZXIua2VybmVsLm9yZw0KPiBTdWJqZWN0
OiBwcm9ibGVtcyB3aXRoIG13aWZpZXhfdXNiLCBoYW5ncyB1bmRlciBsb2FkLCBmaXJtd2FyZSBp
biBiYWQNCj4gc3RhdGUNCj4gDQo+IExpa2Ugb3RoZXJzLCBJJ20gaGF2aW5nIHByb2JsZW1zIHdp
dGggbXdpZmlleF91c2Igb24gYSBTdXJmYWNlIDIgUHJvLA0KPiB3aXRoIHRoZSBsYXRlc3QgZmly
bXdhcmUgImRyaXZlcl92ZXJzaW9uID0gbXdpZmlleCAxLjAgKDE0LjY4LjI5LnAzOCkiDQo+IGFu
ZCB0aGUgbGF0ZXN0IHJlbGVhc2UgY2FuZGlkYXRlIGtlcm5lbCAoNC4zLjByYzcpDQo+IA0KPiBF
dmVyeSA1LTEwIHNlY29uZHMsIGV2ZW4gd2hpbGUgaWRsZSwgSSdsbCBnZXQgYSBrZXJuZWwgbWVz
c2FnZToNCj4gICAgIHVzYiAxLTI6IFJ4IG9mIG1nbXQgcGFja2V0IGZhaWxlZA0KPiANCj4gVW5k
ZXIgbG9hZCAoYSBiaWcgc2NwIG9yIGEgY291cGxlIG9mIGtlcm5lbCBzb3VyY2UgdGFyYmFsbHMg
d2lsbCBkbyB0aGUNCj4gdHJpY2spLCBJIGdldCBhIGh1Z2UgYW1vdW50IG9mIGxvZyBzcGFtLCBv
bmUgbWVzc2FnZSBwZXIgcGFja2V0Og0KPiAgICAgdXNiIDEtMjogZGF0YTogLUVOT1NSIGlzIHJl
dHVybmVkDQoNClRoYW5rcyBmb3IgcmVwb3J0aW5nIHRoZSBwcm9ibGVtLiBUaGVzZSB0d28gbWVz
c2FnZXMgYXJlIGFjdHVhbGx5IHdhcm5pbmdzIGFuZCBub3QgZ2VudWluZSBlcnJvci4gVGhleSBh
cmUgZXhwZWN0ZWQgZHVyaW5nIGhlYXZ5IHRyYWZmaWMuDQpJIHdpbGwgc3VibWl0IGEgcGF0Y2gg
dG8gc3VwcHJlc3MgdGhlbS4gTWVhbndoaWxlIHlvdSBjYW4gY29tbWVudCB0aGVtIG91dCBpbiB5
b3VyIGNvZGUuDQoNCj4gDQo+IE9jY2FzaW9uYWxseSBJJ2xsIGFsc28gc2VlDQo+ICAgICB1c2Ig
MS0yOiBtd2lmaWV4X3VzYl9zdWJtaXRfcnhfdXJiOiBkZXZfYWxsb2Nfc2tiIGZhaWxlZA0KDQpE
byB5b3VyIG1hY2hpbmUgaGF2ZSBlbm91Z2ggc3BhY2Ugd2hlbiB0aGlzIGVycm9yIG9jY3Vycz8g
Q2FuIHlvdSBjaGVjayBpZiB0aGlzIHByb2JsZW0gaXMgc3RpbGwgb2JzZXJ2ZWQgd2hlbiBhYm92
ZSB0d28gZXJyb3IgbWVzc2FnZXMgYXJlIHN1cHByZXNzZWQ/DQoNCj4gDQo+IEFmdGVyIGEgd2hp
bGUsIEkgZ2V0IHRoZSBkcmVhZGVkIGZpcm13YXJlIGJhZCBzdGF0ZSBhbmQgdGhlIG9ubHkgZml4
IGlzDQo+IHRvIHBvd2VyIGN5Y2xlIHRoZSBtYWNoaW5lLiBTdXNwZW5kIGRvZXNuJ3QgcmVzZXQg
dGhlIGhhcmR3YXJlLCBhbmQNCj4gYXR0ZW1wdGluZyB0byBybW1vZC9tb2Rwcm9iZSBtd2lmaWV4
X3VzYiB3aWxsIGNyYXNoIG15IG1hY2hpbmUuDQo+IA0KPiAgdXNiIDEtMjogbXdpZmlleF9jbWRf
dGltZW91dF9mdW5jOiBUaW1lb3V0IGNtZCBpZCA9IDB4NiwgYWN0ID0gMHgzICB1c2INCj4gMS0y
OiBudW1fZGF0YV9oMmNfZmFpbHVyZSA9IDAgIHVzYiAxLTI6IG51bV9jbWRfaDJjX2ZhaWx1cmUg
PSAwICB1c2IgMS0NCj4gMjogaXNfY21kX3RpbWVkb3V0ID0gMSAgdXNiIDEtMjogbnVtX3R4X3Rp
bWVvdXQgPSAwICB1c2IgMS0yOg0KPiBsYXN0X2NtZF9pbmRleCA9IDAgIHVzYiAxLTI6IGxhc3Rf
Y21kX2lkOiAwNiAwMCAyOCAwMCAyOCAwMCAyOCAwMCAyOCAwMA0KPiB1c2IgMS0yOiBsYXN0X2Nt
ZF9hY3Q6IDAzIDAwIDEzIDAwIDEzIDAwIDEzIDAwIDEzIDAwICB1c2IgMS0yOg0KPiBsYXN0X2Nt
ZF9yZXNwX2luZGV4ID0gNCAgdXNiIDEtMjogbGFzdF9jbWRfcmVzcF9pZDogMjggODAgMjggODAg
MjggODAgMjgNCj4gODAgMjggODAgIHVzYiAxLTI6IGxhc3RfZXZlbnRfaW5kZXggPSAzICB1c2Ig
MS0yOiBsYXN0X2V2ZW50OiAzNyAwMCAzMw0KPiAwMCAzNyAwMCAzMyAwMCAzMyAwMCAgdXNiIDEt
MjogZGF0YV9zZW50PTAgY21kX3NlbnQ9MCAgdXNiIDEtMjoNCj4gcHNfbW9kZT0wIHBzX3N0YXRl
PTAgIHVzYiAxLTI6IElnbm9yZSBzY2FuLiBDYXJkIHJlbW92ZWQgb3IgZmlybXdhcmUgaW4NCj4g
YmFkIHN0YXRlICB1c2IgMS0yOiBzY2FuIGZhaWxlZDogLTE0ICB1c2IgMS0yOiBJZ25vcmUgc2Nh
bi4gQ2FyZCByZW1vdmVkDQo+IG9yIGZpcm13YXJlIGluIGJhZCBzdGF0ZSAgdXNiIDEtMjogc2Nh
biBmYWlsZWQ6IC0xNCAgdXNiIDEtMjogSWdub3JlDQo+IHNjYW4uIENhcmQgcmVtb3ZlZCBvciBm
aXJtd2FyZSBpbiBiYWQgc3RhdGUgIHVzYiAxLTI6IHNjYW4gZmFpbGVkOiAtMTQNCj4gdXNiIDEt
MjogSWdub3JlIHNjYW4uIENhcmQgcmVtb3ZlZCBvciBmaXJtd2FyZSBpbiBiYWQgc3RhdGUgIHVz
YiAxLTI6DQo+IHNjYW4gZmFpbGVkOiAtMTQgIHVzYiAxLTI6IElnbm9yZSBzY2FuLiBDYXJkIHJl
bW92ZWQgb3IgZmlybXdhcmUgaW4gYmFkDQo+IHN0YXRlICB1c2IgMS0yOiBzY2FuIGZhaWxlZDog
LTE0ICB1c2IgMS0yOiBJZ25vcmUgc2Nhbi4gQ2FyZCByZW1vdmVkIG9yDQo+IGZpcm13YXJlIGlu
IGJhZCBzdGF0ZSAgdXNiIDEtMjogc2NhbiBmYWlsZWQ6IC0xNCAgdXNiIDEtMjogSWdub3JlIHNj
YW4uDQo+IENhcmQgcmVtb3ZlZCBvciBmaXJtd2FyZSBpbiBiYWQgc3RhdGUgIHVzYiAxLTI6IHNj
YW4gZmFpbGVkOiAtMTQgIHVzYiAxLQ0KPiAyOiBQUkVQX0NNRDogRlcgaXMgaW4gYmFkIHN0YXRl
ICB1c2IgMS0yOiBQUkVQX0NNRDogRlcgaXMgaW4gYmFkIHN0YXRlDQo+ICBJUHY2OiBBRERSQ09O
RihORVRERVZfVVApOiB3bHgyODE4NzhmZDI0MzI6IGxpbmsgaXMgbm90IHJlYWR5ICB1c2IgMS0y
Og0KPiBQUkVQX0NNRDogRlcgaXMgaW4gYmFkIHN0YXRlDQo+IA0KPiBUaGlzIGlzIHJlcHJvZHVj
aWJsZSBhbGwgdGhlIHdheSB1cCB0byA0LjMuMC1yYzcgd2hpY2ggaW5jbHVkZXMgdGhlDQo+IHBh
dGNoIGZyb20gaHR0cDovL3d3dy5zcGluaWNzLm5ldC9saXN0cy9uZXRkZXYvbXNnMzM0MzY3Lmh0
bWwNCj4gDQo+IHRoYXQgd2FzIHN1Z2dlc3RlZCBhcyBhIGZpeCBpbg0KPiBodHRwOi8vd3d3LnNw
aW5pY3MubmV0L2xpc3RzL2xpbnV4LXdpcmVsZXNzL21zZzEzOTA5NS5odG1sDQo+IA0KPiBJIHdh
cyBhYmxlIHRvIHJlcHJvZHVjZSB0aGlzIHdpdGggYWZ0ZXIgdHVybmluZyB1cCBkZWJ1Z2dpbmcg
KGVjaG8NCj4gMHhmZmZmZmZmZiA+IC9zeXMva2VybmVsL2RlYnVnL213aWZpZXgvbWxhbjAvZGVi
dWdfbWFzaykgLSB0aGUgcmVzdWx0aW5nDQo+IHRyYWNlIGlzIDEuNEdCLiBJbnRlcmVzdGVkIHBh
cnRpZXMgY2FuIGNvbnRhY3QgbWUgZm9yIGEgbGluaywgb3IgdGVsbCBtZQ0KPiB3aGF0IEkgc2hv
dWxkIGdyZXAgZm9yLi4uDQo+IA0KPiAtLQ0KDQpDYW4geW91IHJlbW92ZSB0aG9zZSB0d28gbWVz
c2FnZXMgYW5kIHNoYXJlIHRoZSBsb2cgdG8gbWUgZm9yIGFuYWx5c2lzPw0KQWxzbywgc2hhcmUg
aWYgdGhlcmUgaXMgYW55IGRlZmluaXRlIHByb2NlZHVyZSBzbyB0aGF0IHdlIGNhbiB0cnkgdG8g
cmVjcmVhdGUgdGhlIGlzc3VlIGF0IG91ciBlbmQuDQoNClJlZ2FyZHMsDQpBbWl0a3VtYXINCg==
SGkgQ2hyaXMsDQoNCj4gRnJvbTogQ2hyaXMgS3VldGhlIFttYWlsdG86Y2hyaXMua3VldGhlQGdt
YWlsLmNvbV0NCj4gU2VudDogVGh1cnNkYXksIE9jdG9iZXIgMjksIDIwMTUgMTI6MjkgUE0NCj4g
VG86IEFtaXRrdW1hciBLYXJ3YXINCj4gQ2M6IGxpbnV4LXdpcmVsZXNzQHZnZXIua2VybmVsLm9y
Zw0KPiBTdWJqZWN0OiBSZTogcHJvYmxlbXMgd2l0aCBtd2lmaWV4X3VzYiwgaGFuZ3MgdW5kZXIg
bG9hZCwgZmlybXdhcmUgaW4NCj4gYmFkIHN0YXRlDQo+IA0KPiBPbiBXZWQsIE9jdCAyOCwgMjAx
NSBhdCAxMjoxMyBQTSwgQ2hyaXMgS3VldGhlIDxjaHJpcy5rdWV0aGVAZ21haWwuY29tPg0KPiB3
cm90ZToNCj4gPj4gQWxzbywgc2hhcmUgaWYgdGhlcmUgaXMgYW55IGRlZmluaXRlIHByb2NlZHVy
ZSBzbyB0aGF0IHdlIGNhbiB0cnkgdG8NCj4gcmVjcmVhdGUgdGhlIGlzc3VlIGF0IG91ciBlbmQu
DQo+ID4NCj4gPiBNeSB0ZXN0IGlzIHNpbXBseSB0byBydW4gc29tZSBiaWcgd2dldHMgaW4gYSBs
b29wIGFuZCB3YWl0IGZvciB0aGUNCj4gPiBlcnJvcnMuIFNvbWV0aW1lcyBpdCBoYXBwZW5zIGFm
dGVyIGEgZmV3IGh1bmRyZWQgTUIsIHNvbWV0aW1lcyBhZnRlciBhDQo+ID4gZmV3IEdCLg0KPiAN
Cg0KVGhhbmtzIGZvciB0aGUgaW5mb3JtYXRpb24uDQoNCj4gQW5vdGhlciBkYXRhIHBvaW50OiBJ
ZiB0aGUgZmlybXdhcmUgY3Jhc2hlcyBvbiBhIDIuNEdIeiBuZXR3b3JrLCBJIGNhbg0KPiBzd2l0
Y2ggdG8gNUdoeiAob3IgdmljZSB2ZXJzYSkgYW5kIHVzZSBpdCBhZ2FpbiAuLi4gb25jZS4NCj4g
DQoNCkJ1dCBpbiBwcmV2aW91cyBlbWFpbCwgeW91IG1lbnRpb25lZCB0aGUgb25seSB3YXkgaXMg
dG8gcG93ZXIgY3ljbGUgdGhlIGRldmljZSB3aGVuIGZpcm13YXJlIGNyYXNoZXMuDQpXZSB3aWxs
IHJ1biBzb21lIHRlc3RzIGFuZCB0cnkgdG8gcmVjcmVhdGUgdGhpcyBpc3N1ZSwgc28gdGhhdCBv
dXIgZmlybXdhcmUgZXhwZXJ0cyBjYW4gdGFrZSBhIGxvb2sgaW50byB0aGlzLg0KDQpSZWdhcmRz
LA0KQW1pdGt1bWFyDQo=
On Wed, Oct 28, 2015 at 7:15 AM, Amitkumar Karwar <[email protected]> wrote:
> Thanks for reporting the problem. These two messages are actually warnings and not genuine error. They are expected during heavy traffic.
> I will submit a patch to suppress them. Meanwhile you can comment them out in your code.
Done.
>> Occasionally I'll also see
>> usb 1-2: mwifiex_usb_submit_rx_urb: dev_alloc_skb failed
>
> Do your machine have enough space when this error occurs? Can you check if this problem is still observed when above two error messages are suppressed?
Yes. I have lots of free space and memory. This problem is
reproducible when after removing those two error logs.
> Can you remove those two messages and share the log to me for analysis?
Link to log sent via private email.
> Also, share if there is any definite procedure so that we can try to recreate the issue at our end.
My test is simply to run some big wgets in a loop and wait for the
errors. Sometimes it happens after a few hundred MB, sometimes after a
few GB.
--
GDB has a 'break' feature; why doesn't it have 'fix' too?
On Wed, Oct 28, 2015 at 12:13 PM, Chris Kuethe <[email protected]> wrote:
>> Also, share if there is any definite procedure so that we can try to recreate the issue at our end.
>
> My test is simply to run some big wgets in a loop and wait for the
> errors. Sometimes it happens after a few hundred MB, sometimes after a
> few GB.
Another data point: If the firmware crashes on a 2.4GHz network, I can
switch to 5Ghz (or vice versa) and use it again ... once.
--
GDB has a 'break' feature; why doesn't it have 'fix' too?