Re: Fibocom L831-EAU and cdc_mbim

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bjørn Mork <bjorn@xxxxxxx> writes:

> Thanks a lot.  These are very useful.  The thing is that I really cannot
> see anything going wrong there.   The "failed" capture just ends with a
> sequence of successful MBIM indications being read from the firmware.
>
> So whatever goes wrong looks like something entirely local to the
> driver.  I'll try to poke around some more.


I am wondering if Robert added a hint for us here:

	if (desc->rerr) {
		/*
		 * Since there was an error, userspace may decide to not read
		 * any data after poll'ing.
		 * We should respond to further attempts from the device to send
		 * data, so that we can get unstuck.
		 */
		service_outstanding_interrupt(desc);
	}



This might solve only half the problem.  The driver does not stop
reading from the firmware as we can see in your pcaps. But if userspace
decided to not read any more data from the driver, then that doesn't
help much, does it?

What happens if you kill the mbim-proxy process? Are you then able to
use the modem again without resetting it?

Maybe we should simply ignore stalls completely?  They should not happen
with any real WDM device anyway.

What happens if you e.g. change the if-test here:

	/*
	 * only set a new error if there is no previous error.
	 * Errors are only cleared during read/open
	 */
	if (desc->rerr  == 0)
		desc->rerr = status;


to

	if (desc->rerr  == 0 && status != -EPIPE)



Bjørn
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux