Messages in this thread | | | Subject | Re: [PACTH v2] cdc-wdm: Clear read pipeline in case of error | From | Robert Foss <> | Date | Tue, 9 Aug 2016 10:22:27 -0400 |
| |
On 2016-08-09 09:51 AM, Greg KH wrote: > On Mon, Aug 08, 2016 at 11:48:52AM -0400, robert.foss@collabora.com wrote: >> From: Robert Foss <robert.foss@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.foss@collabora.com> >> Signed-off-by: Robert Foss <robert.foss@collabora.com> >> Acked-by: Oliver Neukum <oneukum@suse.com>
Thanks Oliver!
>> --- >> >> 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? >
Will do!
| |