Re: [PACTH v2] cdc-wdm: Clear read pipeline in case of error

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

 



On Mon, Aug 08, 2016 at 11:48:52AM -0400, robert.foss@xxxxxxxxxxxxx wrote:
> From: Robert Foss <robert.foss@xxxxxxxxxxxxx>
> 
> Implemented queued response handling. This queue is processed every time the
> WDM_READ flag is cleared.
> 
> In case of a read error, userspace may not actually read the data, since the
> driver returns an error through wdm_poll. After this, the underlying device may
> attempt to send us more data, but the queue is not processed. While userspace is
> also blocked, because the read error is never cleared.
> 
> After this patch, we proactively process the queue on a read error. If there was
> an outstanding response to handle, that will clear the error (or go through the
> same logic again, if another read error occurs). If there was no outstanding
> response, this will bring the queue size back to 0, unblocking a future response
> from the underlying device.
> 
> Tested-by: Robert Foss <robert.foss@xxxxxxxxxxxxx>
> Signed-off-by: Robert Foss <robert.foss@xxxxxxxxxxxxx>
> Acked-by: Oliver Neukum <oneukum@xxxxxxxx>
> ---
> 
> Changes since v1:
> - Only set a new error code it there is no previous error code

This no longer applies to my tree due to a patch sent before yours for
the same driver.  Can you resync against my usb-testing brance on my
usb.git tree on git.kernel.org and resend?

thanks,

greg k-h
--
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