<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/usb/core/urb.c, branch linux-3.9.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.9.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.9.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-11-12T02:10:46Z</updated>
<entry>
<title>USB: report submission of active URBs</title>
<updated>2012-11-12T02:10:46Z</updated>
<author>
<name>Alan Stern</name>
</author>
<published>2012-11-07T21:35:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2f02bc8af3abb846823811af65ec6cc46a4d525d'/>
<id>urn:sha1:2f02bc8af3abb846823811af65ec6cc46a4d525d</id>
<content type='text'>
This patch (as1633) changes slightly the way usbcore handled
submissions of URBs that are already active.  It will now return
-EBUSY rather than -EINVAL, and it will call WARN_ONCE to draw
people's attention to the bug.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>USB: update documentation for URB_ISO_ASAP</title>
<updated>2012-10-22T18:10:24Z</updated>
<author>
<name>Alan Stern</name>
</author>
<published>2012-10-01T14:31:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a03bede5c73a6876fa891cfe82a65460dc9f4698'/>
<id>urn:sha1:a03bede5c73a6876fa891cfe82a65460dc9f4698</id>
<content type='text'>
This patch (as1611) updates the USB documentation and kerneldoc to
give a more precise meaning for the URB_ISO_ASAP flag and to explain
more of the details of scheduling for isochronous URBs.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usbhid: prevent deadlock during timeout</title>
<updated>2012-05-01T17:22:13Z</updated>
<author>
<name>Oliver Neukum</name>
</author>
<published>2012-04-30T07:13:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8815bb09af21316aeb5f8948b24ac62181670db2'/>
<id>urn:sha1:8815bb09af21316aeb5f8948b24ac62181670db2</id>
<content type='text'>
On some HCDs usb_unlink_urb() can directly call the
completion handler. That limits the spinlocks that can
be taken in the handler to locks not held while calling
usb_unlink_urb()
To prevent a race with resubmission, this patch exposes
usbcore's infrastructure for blocking submission, uses it
and so drops the lock without causing a race in usbhid.

Signed-off-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Acked-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>USB documentation: explain lifetime rules for unlinking URBs</title>
<updated>2012-04-06T20:54:00Z</updated>
<author>
<name>Alan Stern</name>
</author>
<published>2012-03-28T20:13:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=da8bfb090c2b30af9f3879443355f7eb1d0fe10a'/>
<id>urn:sha1:da8bfb090c2b30af9f3879443355f7eb1d0fe10a</id>
<content type='text'>
This patch (as1534c) updates the documentation for usb_unlink_urb and
related functions.  It explains that the caller must prevent the URB
being unlinked from getting deallocated while the unlink is taking
place.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
CC: Ming Lei &lt;tom.leiming@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb/core: remove "always" from usb_unlink_urb() kernel doc entry</title>
<updated>2012-03-03T00:22:11Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-02-29T22:04:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=371f3b49f2cb1a8b6ac09b6b108841ca92349eb1'/>
<id>urn:sha1:371f3b49f2cb1a8b6ac09b6b108841ca92349eb1</id>
<content type='text'>
The kernel doc entry for usb_unlink_urb() contains the phrase "This
request is always asynchronous.". The "always" leads to the assumption
that the -&gt;complete() callback is not called from within
usb_unlink_urb(). This is not true. The HCD is allowed to call the
-&gt;complete() from within -&gt;urb_dequeue() if it is appropriate for the
hardware.
This patch updates the kernel doc so usb-device driver authors make sure
to drop all locks (and make sure it is okay to drop them) which are
acquired by the complete callback before calling usb_unlink_urb().

Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>USB: debugging code shouldn't alter control flow</title>
<updated>2012-02-03T00:15:44Z</updated>
<author>
<name>Alan Stern</name>
</author>
<published>2012-02-02T20:38:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0cb54a3e47cb4baf0bc7463f0a64cfeae5e35697'/>
<id>urn:sha1:0cb54a3e47cb4baf0bc7463f0a64cfeae5e35697</id>
<content type='text'>
People have complained that debugging code shouldn't alter the flow of
control; it should restrict itself to printing out warnings and error
messages.  Bowing to popular opinion, this patch (as1518) changes the
debugging checks in usb_submit_urb() to follow this guideline.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Reported-by: Keith Packard &lt;keithp@keithp.com&gt;
CC: Pavel Machek &lt;pavel@ucw.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>USB: use usb_endpoint_maxp() instead of le16_to_cpu()</title>
<updated>2011-08-23T16:47:40Z</updated>
<author>
<name>Kuninori Morimoto</name>
</author>
<published>2011-08-23T10:12:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=29cc88979a8818cd8c5019426e945aed118b400e'/>
<id>urn:sha1:29cc88979a8818cd8c5019426e945aed118b400e</id>
<content type='text'>
Now ${LINUX}/drivers/usb/* can use usb_endpoint_maxp(desc) to get maximum packet size
instead of le16_to_cpu(desc-&gt;wMaxPacketSize).
This patch fix it up

Cc: Armin Fuerst &lt;fuerst@in.tum.de&gt;
Cc: Pavel Machek &lt;pavel@ucw.cz&gt;
Cc: Johannes Erdfelt &lt;johannes@erdfelt.com&gt;
Cc: Vojtech Pavlik &lt;vojtech@suse.cz&gt;
Cc: Oliver Neukum &lt;oliver@neukum.name&gt;
Cc: David Kubicek &lt;dave@awk.cz&gt;
Cc: Johan Hovold &lt;jhovold@gmail.com&gt;
Cc: Brad Hards &lt;bhards@bigpond.net.au&gt;
Acked-by: Felipe Balbi &lt;balbi@ti.com&gt;
Cc: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Cc: Thomas Dahlmann &lt;dahlmann.thomas@arcor.de&gt;
Cc: David Brownell &lt;david-b@pacbell.net&gt;
Cc: David Lopo &lt;dlopo@chipidea.mips.com&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: Michal Nazarewicz &lt;m.nazarewicz@samsung.com&gt;
Cc: Xie Xiaobo &lt;X.Xie@freescale.com&gt;
Cc: Li Yang &lt;leoli@freescale.com&gt;
Cc: Jiang Bo &lt;tanya.jiang@freescale.com&gt;
Cc: Yuan-hsin Chen &lt;yhchen@faraday-tech.com&gt;
Cc: Darius Augulis &lt;augulis.darius@gmail.com&gt;
Cc: Xiaochen Shen &lt;xiaochen.shen@intel.com&gt;
Cc: Yoshihiro Shimoda &lt;yoshihiro.shimoda.uh@renesas.com&gt;
Cc: OKI SEMICONDUCTOR, &lt;toshiharu-linux@dsn.okisemi.com&gt;
Cc: Robert Jarzmik &lt;robert.jarzmik@free.fr&gt;
Cc: Ben Dooks &lt;ben@simtec.co.uk&gt;
Cc: Thomas Abraham &lt;thomas.ab@samsung.com&gt;
Cc: Herbert Pötzl &lt;herbert@13thfloor.at&gt;
Cc: Arnaud Patard &lt;arnaud.patard@rtp-net.org&gt;
Cc: Roman Weissgaerber &lt;weissg@vienna.at&gt;
Acked-by: Sarah Sharp &lt;sarah.a.sharp@linux.intel.com&gt;
Cc: Tony Olech &lt;tony.olech@elandigitalsystems.com&gt;
Cc: Florian Floe Echtler &lt;echtler@fs.tum.de&gt;
Cc: Christian Lucht &lt;lucht@codemercs.com&gt;
Cc: Juergen Stuber &lt;starblue@sourceforge.net&gt;
Cc: Georges Toth &lt;g.toth@e-biz.lu&gt;
Cc: Bill Ryder &lt;bryder@sgi.com&gt;
Cc: Kuba Ober &lt;kuba@mareimbrium.org&gt;
Cc: Inaky Perez-Gonzalez &lt;inaky.perez-gonzalez@intel.com&gt;
Signed-off-by: Kuninori Morimoto &lt;kuninori.morimoto.gx@renesas.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>USB: Add support for SuperSpeed isoc endpoints</title>
<updated>2011-03-14T01:23:57Z</updated>
<author>
<name>Paul Zimmerman</name>
</author>
<published>2011-03-01T02:11:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=500132a0f26ad7d9916102193cbc6c1b1becb373'/>
<id>urn:sha1:500132a0f26ad7d9916102193cbc6c1b1becb373</id>
<content type='text'>
Use the Mult and bMaxBurst values from the endpoint companion
descriptor to calculate the max length of an isoc transfer.

Add USB_SS_MULT macro to access Mult field of bmAttributes, at
Sarah's suggestion.

This patch should be queued for the 2.6.36 and 2.6.37 stable trees, since
those were the first kernels to have isochronous support for SuperSpeed
devices.

Signed-off-by: Paul Zimmerman &lt;paulz@synopsys.com&gt;
Signed-off-by: Sarah Sharp &lt;sarah.a.sharp@linux.intel.com&gt;
Cc: stable@kernel.org
</content>
</entry>
<entry>
<title>USB: output an error message when the pipe type doesn't match the endpoint type</title>
<updated>2010-10-22T17:21:27Z</updated>
<author>
<name>Simon Arlott</name>
</author>
<published>2010-08-30T21:50:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7dd64916bb6cfae8c96eaa3c754c30b5046586f'/>
<id>urn:sha1:f7dd64916bb6cfae8c96eaa3c754c30b5046586f</id>
<content type='text'>
Commit f661c6f8c67bd55e93348f160d590ff9edf08904 adds a check of the pipe type if
CONFIG_USB_DEBUG is enabled, but it doesn't output anything if this scenario
occurs.

Signed-off-by: Simon Arlott &lt;simon@fire.lp0.eu&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: fix thread-unsafe anchor utiliy routines</title>
<updated>2010-08-10T21:35:45Z</updated>
<author>
<name>Christian Lamparter</name>
</author>
<published>2010-08-03T00:32:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b3e670443b7fb8a2d29831b62b44a039c283e351'/>
<id>urn:sha1:b3e670443b7fb8a2d29831b62b44a039c283e351</id>
<content type='text'>
This patch fixes a race condition in two utility routines
related to the removal/unlinking of urbs from an anchor.

If two threads are concurrently accessing the same anchor,
both could end up with the same urb - thinking they are
the exclusive owner.

Alan Stern pointed out a related issue in
usb_unlink_anchored_urbs:

"The URB isn't removed from the anchor until it completes
 (as a by-product of completion, in fact), which might not
 be for quite some time after the unlink call returns.
 In the meantime, the subroutine will keep trying to unlink
 it, over and over again."

Cc: stable &lt;stable@kernel.org&gt;
Cc: Oliver Neukum &lt;oneukum@suse.de&gt;
Cc: Greg Kroah-Hartman &lt;greg@kroah.com&gt;
Acked-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Christian Lamparter &lt;chunkeey@googlemail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
</feed>
