<div dir="ltr"><div>Did you ever investigate this further?  I'm seeing this same issue.</div><div><br></div><div>It seems to be related to autosuspend, because using <span class="">usbcore.autosuspend="-1"</span><span class=""> eliminates the issue.  I've also noticed that if you close and then reopen the qmi socket, it will stop erroring.</span></div><div><span class=""><br></span></div><div><span class="">Thanks!</span></div>







</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 11, 2014 at 9:24 AM, Bjørn Mork <span dir="ltr"><<a href="mailto:bjorn@mork.no" target="_blank">bjorn@mork.no</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">szlin <<a href="mailto:lin.sunze@gmail.com">lin.sunze@gmail.com</a>> writes:<br>
<br>
>>   mount -t debugfs none /sys/kernel/debug<br>
>>   echo 'file cdc-wdm.c +fp' > /sys/kernel/debug/dynamic_debug/control<br>
>><br>
>> You should then see at least one "zero length - clearing WDM_READ"<br>
>> debug message after the error.  But since your system fails at this<br>
>> point, you might want to add more debug messages around the in callback<br>
>> and read functions first.<br>
>><br>
><br>
> I did some experiments according to your suggestion.<br>
><br>
> *First time*:<br>
> I type "qmicli -d /dev/cdc-wdm0 --nas-get-system-info" I got the following<br>
> message.<br>
><br>
> drivers/net/usb/usbnet.c:596 [usbnet]unlink_urbs - "unlink urb err, %d\012"<br>
> drivers/net/usb/usbnet.c:639 [usbnet]usbnet_terminate_urbs - "waited for %d<br>
> urb completions\012"<br>
<br>
</span>Huh?  This looks more like the output of<br>
<br>
  cat /sys/kernel/debug/dynamic_debug/control<br>
<br>
except that the flag setting is replaced by '-'.  You should write the text<br>
<br>
   file cdc-wdm.c +fp<br>
<br>
to this file.  You will then see something like this when you read it<br>
back:<br>
<br>
# grep wdm /sys/kernel/debug/dynamic_debug/control<br>
drivers/usb/class/cdc-wdm.c:1047 [cdc_wdm]wdm_resume =pf "wdm%d_resume\012"<br>
drivers/usb/class/cdc-wdm.c:997 [cdc_wdm]wdm_suspend =pf "wdm%d_suspend\012"<br>
drivers/usb/class/cdc-wdm.c:987 [cdc_wdm]wdm_disconnect =pf "%s: %d open files - postponing cleanup\012"<br>
drivers/usb/class/cdc-wdm.c:673 [cdc_wdm]wdm_release =pf "wdm_release: cleanup"<br>
drivers/usb/class/cdc-wdm.c:681 [cdc_wdm]wdm_release =pf "cdc_wdm %s: device gone - cleaning up\012"<br>
drivers/usb/class/cdc-wdm.c:425 [cdc_wdm]wdm_write =pf "Tx URB has been submitted index=%d"<br>
drivers/usb/class/cdc-wdm.c:537 [cdc_wdm]wdm_read =pf "%s: zero length - clearing WDM_READ\012"<br>
drivers/usb/class/cdc-wdm.c:895 [cdc_wdm]wdm_probe =pf "Finding maximum buffer length: %d"<br>
drivers/usb/class/cdc-wdm.c:170 [cdc_wdm]wdm_in_callback =pf "nonzero urb status received: -ENOENT"<br>
drivers/usb/class/cdc-wdm.c:174 [cdc_wdm]wdm_in_callback =pf "nonzero urb status received: -ECONNRESET"<br>
drivers/usb/class/cdc-wdm.c:178 [cdc_wdm]wdm_in_callback =pf "nonzero urb status received: -ESHUTDOWN"<br>
drivers/usb/class/cdc-wdm.c:248 [cdc_wdm]wdm_int_callback =pf "NOTIFY_RESPONSE_AVAILABLE received: index %d len %d"<br>
drivers/usb/class/cdc-wdm.c:255 [cdc_wdm]wdm_int_callback =pf "NOTIFY_NETWORK_CONNECTION %s network"<br>
drivers/usb/class/cdc-wdm.c:259 [cdc_wdm]wdm_int_callback =pf "SPEED_CHANGE received (len %u)"<br>
drivers/usb/class/cdc-wdm.c:276 [cdc_wdm]wdm_int_callback =pf "%s: usb_submit_urb %d"<br>
<br>
<br>
and these messages will be logged when they appear in the code, prefixed<br>
with the name of the function.<br>
<span class=""><br>
> I just got another sierra module - MC7304, which product id is the same as<br>
> the MC7354. Maybe I could do some experiments to clarify this issue.<br>
<br>
</span>Yes, that's interesting to know.  These modules should be very similar<br>
so any difference would be unexpected and worth investigating further.<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
<br>
Bjørn<br>
_______________________________________________<br>
libqmi-devel mailing list<br>
<a href="mailto:libqmi-devel@lists.freedesktop.org">libqmi-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/libqmi-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/libqmi-devel</a><br>
</div></div></blockquote></div><br></div>