Re: [BUG] cdc-acm: no data available after port open

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

 



On Mon, 2016-06-13 at 00:37 +0200, Ladislav Michl wrote:
> On Sun, Jun 12, 2016 at 11:03:45PM +0200, Ladislav Michl wrote:
> > Once ttyACM0 starts behave strangely, read() returns only what's in buffer before
> > ttyACM0 was opened and then hangs infinitely. As this bug is hard to trigger, has
> > anyone clue where to start debugging?
> 
> Forgot to mention, once this happens "usb 3-1.4: clear tt 1 (9061) error -75"
> starts showing in the syslog. Also "cdc_acm 3-1.4.3:1.0: failed to set dtr/rts",
> but this one is there normally.

The translation transactor in the hub is reporting an error.
That should be reported to the driver, but there is no good
error handling.

static void acm_read_bulk_callback(struct urb *urb)
{
        struct acm_rb *rb = urb->context;
        struct acm *acm = rb->instance;
        unsigned long flags;
        int status = urb->status;

        dev_vdbg(&acm->data->dev, "%s - urb %d, len %d\n", __func__,
                                        rb->index, urb->actual_length);

        if (!acm->dev) {
                set_bit(rb->index, &acm->read_urbs_free);
                dev_dbg(&acm->data->dev, "%s - disconnected\n", __func__);
                return;
        }

        if (status) {
                set_bit(rb->index, &acm->read_urbs_free);
                dev_dbg(&acm->data->dev, "%s - non-zero urb status: %d\n",
                                                        __func__, status);
                if ((status != -ENOENT) || (urb->actual_length == 0))
                        return;
        }

Can you please switch on dynamic debugging for cdc_acm to see what
is being reported?

	Regards
		Oliver


--
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