]> git.baikalelectronics.ru Git - kernel.git/commit
USB: ehci: handle large bulk URBs correctly (again)
authorMisha Zhilin <misha@epiphan.com>
Thu, 28 Feb 2008 02:05:24 +0000 (18:05 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 4 Mar 2008 22:57:43 +0000 (14:57 -0800)
commit1c0716009c9c882d8b52a1eb210c0cc721da61a3
tree44d0ebd86e84422296bb512f78722b507d092409
parent27704f7b6689c160a33261382b408d2ea7f076ce
USB: ehci: handle large bulk URBs correctly (again)

USB: ehci: Fixes completion for multi-qtd URB the short read case

When use of urb->status in the EHCI driver was reworked last August
(commit 81b5d449ab9420e28dfd04c75521c33b1ca97780), a bug was inserted
in the handling of early completion for bulk transactions that need
more than one qTD (e.g. more than 20KB in one URB).

This patch resolves that problem by ensuring that the early completion
status is preserved until the URB is handed back to its submitter,
instead of resetting it after each qTD.

Signed-off-by: Misha Zhilin <misha@epiphan.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Cc: stable@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/ehci-q.c