2.4.36-stable kernel tree
Revision | d0e38a4cc5681dad154dd00c63e0b44aa7807d34 (tree) |
---|---|
Zeit | 2006-12-05 17:25:40 |
Autor | Oliver Neukum <oliver@neuk...> |
Commiter | Willy Tarreau |
[PATCH] fix for transient error in usb printer driver
Hi,
this is a port of a fix for 2.6 which handles transient errors while
writing to the printer. The buffer has to be marked free again if
urb submission fails, as the completion handler can't do it.
Please apply to the 2.4 tree.
Regards
Oliver
Signed-off-by: Oliver Neukum <oliver@neukum.name>
@@ -692,6 +692,7 @@ static ssize_t usblp_write(struct file *file, const char *buffer, size_t count, | ||
692 | 692 | usblp->wcomplete = 0; |
693 | 693 | err = usb_submit_urb(usblp->writeurb); |
694 | 694 | if (err) { |
695 | + usblp->wcomplete = 1; | |
695 | 696 | if (err != -ENOMEM) |
696 | 697 | count = -EIO; |
697 | 698 | else |