]> git.baikalelectronics.ru Git - kernel.git/commit
USB: usblp: add dynamic URBs, fix races
authorPete Zaitcev <zaitcev@redhat.com>
Thu, 21 Jun 2007 19:44:56 +0000 (12:44 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 12 Jul 2007 23:34:39 +0000 (16:34 -0700)
commitaf373aa70bddd7185b6d9d9d338a899f6a20a771
treeb1a9eae5c68048ee230df120b07b9f843b6497dd
parente3de0e0b640d9e361eec5ffd7d6e46d2bc4ac348
USB: usblp: add dynamic URBs, fix races

This patch's main bulk aims to make usblp the premier driver for code
pillaging once again. The code is as streamlined as possible and is bug-free
as possible. The usb-skeleton performs the same function, but is somewhat
abstract. The usblp is usb-skeleton which is actually used by many.

Since I combed a few small bugs away, this also fixes the small races we
had in usblp for a while. For example, now it's possible for several threads
to make write(2) calls (sounds silly, but consider a printer for paper
record, where every line of text is self-contained and thus it's all right
to have them interleaved). Also gone are issues with interrupts using
barriers dangerously.

This patch makes use of Oliver's anchor, and so it must trail the anchor
patch on the way to Linus.

Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/class/usblp.c