<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/usb/class, branch v2.6.28</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v2.6.28</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v2.6.28'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2008-12-17T18:49:10Z</updated>
<entry>
<title>USB: fix problem with usbtmc driver not loading properly</title>
<updated>2008-12-17T18:49:10Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-12-04T00:33:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5413aa467806578bf5f78a83893cb9426b815231'/>
<id>urn:sha1:5413aa467806578bf5f78a83893cb9426b815231</id>
<content type='text'>
The usbtmc driver forgot to export its device table to userspace.
Without this, it is never loaded properly when such a device is seen by
the system.

Cc: Marcel Janssen &lt;marcel.janssen@admesy.nl&gt;
Cc: stable &lt;stable@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: cdc-acm.c: fix recursive lock in acm_start_wb error path</title>
<updated>2008-11-13T22:45:02Z</updated>
<author>
<name>Brandon Philips</name>
<email>brandon@ifup.org</email>
</author>
<published>2008-11-06T19:19:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ad0b65efd12d020b046cde8d6f474e37bb98dd73'/>
<id>urn:sha1:ad0b65efd12d020b046cde8d6f474e37bb98dd73</id>
<content type='text'>
Fixes an obvious bug in cdc-acm by avoiding a recursive lock on
acm_start_wb()'s error path. Should apply towards 2.6.27 stable and
2.6.28.

=============================================
[ INFO: possible recursive locking detected ]
2.6.27-2-pae #109
---------------------------------------------
python/31449 is trying to acquire lock:
 (&amp;acm-&gt;write_lock){++..}, at: [&lt;f89a0348&gt;] acm_start_wb+0x5c/0x7b [cdc_acm]

but task is already holding lock:
 (&amp;acm-&gt;write_lock){++..}, at: [&lt;f89a04fb&gt;] acm_tty_write+0xe1/0x167 [cdc_acm]

other info that might help us debug this:
2 locks held by python/31449:
 #0:  (&amp;tty-&gt;atomic_write_lock){--..}, at: [&lt;c0260fae&gt;] tty_write_lock+0x14/0x3b
 #1:  (&amp;acm-&gt;write_lock){++..}, at: [&lt;f89a04fb&gt;] acm_tty_write+0xe1/0x167 [cdc_acm]

stack backtrace:
Pid: 31449, comm: python Not tainted 2.6.27-2-pae #109
 [&lt;c030f42f&gt;] ? printk+0xf/0x18
 [&lt;c0149f33&gt;] __lock_acquire+0xc7b/0x1316
 [&lt;c014a63e&gt;] lock_acquire+0x70/0x97
 [&lt;f89a0348&gt;] ? acm_start_wb+0x5c/0x7b [cdc_acm]
 [&lt;c0312109&gt;] _spin_lock_irqsave+0x37/0x47
 [&lt;f89a0348&gt;] ? acm_start_wb+0x5c/0x7b [cdc_acm]
 [&lt;f89a0348&gt;] acm_start_wb+0x5c/0x7b [cdc_acm]
 [&lt;f89a055d&gt;] acm_tty_write+0x143/0x167 [cdc_acm]
 [&lt;c0262a98&gt;] write_chan+0x1cd/0x297
 [&lt;c012527e&gt;] ? default_wake_function+0x0/0xd
 [&lt;c026111e&gt;] tty_write+0x149/0x1b9
 [&lt;c02628cb&gt;] ? write_chan+0x0/0x297
 [&lt;c01912c5&gt;] ? rw_verify_area+0x76/0x98
 [&lt;c0260fd5&gt;] ? tty_write+0x0/0x1b9
 [&lt;c01919ba&gt;] vfs_write+0x8c/0x136
 [&lt;c0191afd&gt;] sys_write+0x3b/0x60
 [&lt;c0103beb&gt;] sysenter_do_call+0x12/0x3f
 =======================

Signed-off-by: Brandon Philips &lt;bphilips@suse.de&gt;
Cc: Oliver Neukum &lt;oliver@neukum.org&gt;
Cc: stable &lt;stable@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: usbtmc: Use explicit unsigned type for input buffer instead of char*</title>
<updated>2008-10-29T21:54:40Z</updated>
<author>
<name>Chris Malley</name>
<email>mail@chrismalley.co.uk</email>
</author>
<published>2008-10-25T21:07:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b361a6e348a5de9e18eb17542663d34a57740e87'/>
<id>urn:sha1:b361a6e348a5de9e18eb17542663d34a57740e87</id>
<content type='text'>
Silences compiler warning about comparison with 0x80, and type now matches the
corresponding _bulk_out function.

drivers/usb/class/usbtmc.c: In function ‘usbtmc_ioctl_abort_bulk_in’:
drivers/usb/class/usbtmc.c:163: warning: comparison is always false due to limited range of data type

Signed-off-by: Chris Malley &lt;mail@chrismalley.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: fix memory leak in cdc-acm</title>
<updated>2008-10-22T17:05:29Z</updated>
<author>
<name>Oliver Neukum</name>
<email>oliver@neukum.org</email>
</author>
<published>2008-10-21T08:39:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a496c64f1363ec4d67ebdc1e1f619ad6372a574c'/>
<id>urn:sha1:a496c64f1363ec4d67ebdc1e1f619ad6372a574c</id>
<content type='text'>
This fixes a memory leak on disconnect in cdc-acm

Thanks to 施金前 for finding it.

Signed-off-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Cc: stable &lt;stable@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>USB: cdc-wdm: make module autoload work</title>
<updated>2008-10-22T17:05:29Z</updated>
<author>
<name>Oliver Neukum</name>
<email>oliver@neukum.org</email>
</author>
<published>2008-10-13T12:05:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=aa5380b904e7f896db0931320160bdea93e41f6a'/>
<id>urn:sha1:aa5380b904e7f896db0931320160bdea93e41f6a</id>
<content type='text'>
this fixes an omission that led to no alias being computed for the
cdc-wdm module.

Signed-off-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Cc: stable &lt;stable@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: remove err() macro from usb class drivers</title>
<updated>2008-10-17T21:41:10Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-08-14T16:37:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9908a32e94de2141463e104c9924279ed3509447'/>
<id>urn:sha1:9908a32e94de2141463e104c9924279ed3509447</id>
<content type='text'>
USB should not be having it's own printk macros, so remove err() and
use the system-wide standard of dev_err() wherever possible.  In the
few places that will not work out, use a basic printk().

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: remove info() macro from remaining usb drivers</title>
<updated>2008-10-17T21:41:09Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-08-18T20:21:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5909f6ea2bc7f785ceb1bed14c670946a536ff2d'/>
<id>urn:sha1:5909f6ea2bc7f785ceb1bed14c670946a536ff2d</id>
<content type='text'>
USB should not be having it's own printk macros, so remove info() and
use the system-wide standard of dev_info() wherever possible.  In the
few places that will not work out, use a basic printk().

Clean up the remaining usages of this in the drivers/usb/ directory.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>drivers/usb/class/usblp.c: adjust error handling code</title>
<updated>2008-10-17T21:40:51Z</updated>
<author>
<name>Julia Lawall</name>
<email>julia@diku.dk</email>
</author>
<published>2008-07-16T16:00:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=49b707b90c7f7260beb8691fc5d99d71a5549ec0'/>
<id>urn:sha1:49b707b90c7f7260beb8691fc5d99d71a5549ec0</id>
<content type='text'>
In this code, it is possible to tell statically whether usblp will be NULL
in the error handling code.

Oliver Neukum suggested to make a goto to the final return rather than 
return directly.

The semantic match that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// &lt;smpl&gt;
@@
identifier f,err,l,l1;
type T;
expression x,E;
statement S;
@@

x = NULL
... when != goto l1;
* x = f(...)
... when != x
err = E;
goto l;
...
* if (x != NULL)
  S
return err;
// &lt;/smpl&gt;

Signed-off-by: Julia Lawall &lt;julia@diku.dk&gt;
Cc: Pete Zaitcev &lt;zaitcev@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: add USB test and measurement class driver</title>
<updated>2008-10-17T21:40:51Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-08-26T23:22:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5b775f672cc993ba9dba5626811ab1f2ac42883b'/>
<id>urn:sha1:5b775f672cc993ba9dba5626811ab1f2ac42883b</id>
<content type='text'>
This driver was originaly written by Stefan Kopp, but massively
reworked by Greg for submission.

Thanks to Felipe Balbi &lt;me@felipebalbi.com&gt; for lots of work in cleaning
up this driver.

Thanks to Oliver Neukum &lt;oliver@neukum.org&gt; for reviewing previous
versions and pointing out problems.


Cc: Stefan Kopp &lt;stefan_kopp@agilent.com&gt;
Cc: Marcel Janssen &lt;korgull@home.nl&gt;
Cc: Felipe Balbi &lt;me@felipebalbi.com&gt;
Cc: Oliver Neukum &lt;oliver@neukum.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: cdc-acm: don't unlock acm-&gt;mutex on error path</title>
<updated>2008-08-21T17:26:35Z</updated>
<author>
<name>Alexey Dobriyan</name>
<email>adobriyan@gmail.com</email>
</author>
<published>2008-08-20T23:56:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=74573ee7096a4ffc2f098108d21c85801b9c7434'/>
<id>urn:sha1:74573ee7096a4ffc2f098108d21c85801b9c7434</id>
<content type='text'>
On Wed, Jul 23, 2008 at 03:52:36PM +0300, Andrei Popa wrote:
&gt; I installed gnokii-0.6.22-r2 and gave the command "gnokii --identify"
&gt; and the kernel oopsed:
&gt;
&gt; BUG: unable to handle kernel NULL pointer dereference at 00000458
&gt; IP: [&lt;c0444b52&gt;] mutex_unlock+0x0/0xb
&gt;  [&lt;c03830ae&gt;] acm_tty_open+0x4c/0x214

Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Tested-by: Andrei Popa &lt;andrei.popa@i-neo.ro&gt;
Cc: stable &lt;stable@kernel.org&gt;		[2.6.25.x, 2.6.26.x]
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

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