On Mon, 2016-08-08 at 11:48 -0400, robert.f...@collabora.com wrote:
> From: Robert Foss <robert.f...@collabora.com>
> 
> 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.f...@collabora.com>
> Signed-off-by: Robert Foss <robert.f...@collabora.com>
Acked-by: Oliver Neukum <oneu...@suse.com>

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

Reply via email to