<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/usb/misc, branch v2.6.29-rc2</title>
<subtitle>Clone of https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git</subtitle>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/'/>
<entry>
<title>USB: emi26: fix oops on load</title>
<updated>2009-01-07T18:00:13+00:00</updated>
<author>
<name>Marcin Slusarz</name>
<email>marcin.slusarz@gmail.com</email>
</author>
<published>2009-01-04T12:25:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=327d74f6b65ddc8a042c43c11fdd4be0bb354668'/>
<id>327d74f6b65ddc8a042c43c11fdd4be0bb354668</id>
<content type='text'>
Fix oops introduced by commit ae93a55bf948753de0bb8e43fa9c027f786abb05
(emi26: use request_firmware()):

usb 1-1: new full speed USB device using uhci_hcd and address 2
usb 1-1: configuration #1 chosen from 1 choice
emi26 - firmware loader 1-1:1.0: emi26_probe start
usb 1-1: firmware: requesting emi26/loader.fw
usb 1-1: firmware: requesting emi26/bitstream.fw
usb 1-1: firmware: requesting emi26/firmware.fw
usb 1-1: emi26_set_reset - 1
usb 1-1: emi26_set_reset - 0
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [&lt;f80dc487&gt;] emi26_probe+0x2f7/0x620 [emi26]
*pde = 00000000
Oops: 0000 [#1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:1d.0/usb1/1-1/firmware/1-1/loading
Modules linked in: emi26(+) ipv6 cpufreq_ondemand coretemp arc4 ecb iwl3945 irtty_sir sir_dev nsc_ircc ehci_hcd uhci_hcd mac80211 irda usbcore snd_hda_intel thinkpad_acpi rfkill hwmon led_class e1000e snd_pcm cfg80211 snd_timer crc_ccitt snd snd_page_alloc aes_generic

Pid: 5082, comm: modprobe Not tainted (2.6.28 #2) 17023QG
EIP: 0060:[&lt;f80dc487&gt;] EFLAGS: 00010206 CPU: 0
EIP is at emi26_probe+0x2f7/0x620 [emi26]
EAX: 0000015c EBX: 00000000 ECX: c1ffd9c0 EDX: 00000000
ESI: 0000015c EDI: f6bb215c EBP: f6bb0400 ESP: f00ebcfc
 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process modprobe (pid: 5082, ti=f00ea000 task=f5c7c700 task.ti=f00ea000)
Stack:
 0000015c 000000a5 f6a67cb8 f80dc7e0 c01c6262 fbef2986 f6bb2000 00008fe0
 0000015c f715f748 f715f740 f715f738 f715f748 f6a67c00 f80dd040 f80dcfc0
 f6bb0400 fbacb290 f6a67c94 fbae0160 c01c70bf 00000000 f6a67c1c 00000000
Call Trace:
 [&lt;c01c6262&gt;] sysfs_add_one+0x12/0x50
 [&lt;fbacb290&gt;] usb_probe_interface+0xa0/0x140 [usbcore]
 [&lt;c01c70bf&gt;] sysfs_create_link+0xf/0x20
 [&lt;c02dead2&gt;] driver_probe_device+0x82/0x180
 [&lt;fbac9eeb&gt;] usb_match_id+0x3b/0x50 [usbcore]
 [&lt;c02dec4e&gt;] __driver_attach+0x7e/0x80
 [&lt;c02de27a&gt;] bus_for_each_dev+0x3a/0x60
 [&lt;c02de956&gt;] driver_attach+0x16/0x20
 [&lt;c02debd0&gt;] __driver_attach+0x0/0x80
 [&lt;c02de7b1&gt;] bus_add_driver+0x1a1/0x220
 [&lt;c02dee4d&gt;] driver_register+0x4d/0x120
 [&lt;c024e622&gt;] idr_get_empty_slot+0xf2/0x290
 [&lt;fbacab71&gt;] usb_register_driver+0x81/0x100 [usbcore]
 [&lt;f806c000&gt;] emi26_init+0x0/0x14 [emi26]
 [&lt;c0101126&gt;] do_one_initcall+0x36/0x1b0
 [&lt;c01c5e70&gt;] sysfs_ilookup_test+0x0/0x10
 [&lt;c0197a61&gt;] ifind+0x31/0x90
 [&lt;c01c6229&gt;] __sysfs_add_one+0x59/0x80
 [&lt;c01c64e4&gt;] sysfs_addrm_finish+0x14/0x1c0
 [&lt;c0175ca3&gt;] __vunmap+0xa3/0xd0
 [&lt;c014b854&gt;] load_module+0x1544/0x1640
 [&lt;c014b9d7&gt;] sys_init_module+0x87/0x1b0
 [&lt;c0187f41&gt;] sys_read+0x41/0x70
 [&lt;c01032a5&gt;] sysenter_do_call+0x12/0x21
 [&lt;c03d0000&gt;] wait_for_common+0x40/0x110
Code: 66 c1 e8 08 66 09 d0 75 a5 31 d2 89 e8 e8 72 fc ff ff 85 c0 0f 88 9a 02 00 00 b8 fa 00 00 00 e8 30 46 05 c8 8b 74 24 28 8b 5e 04 &lt;8b&gt; 03 89 44 24 1c 0f c8 89 44 24 1c 0f b7 4b 04 c7 44 24 20 00
EIP: [&lt;f80dc487&gt;] emi26_probe+0x2f7/0x620 [emi26] SS:ESP 0068:f00ebcfc
---[ end trace 2eefa13825431230 ]---

After the last "package" of firmware data is sent to the device, we dereference
NULL pointer (on access to rec-&gt;addr). Fix it.

Reported--by: David Flatz &lt;david@upcs.at&gt;
Tested-by: David Flatz &lt;david@upcs.at&gt;
Signed-off-by: Marcin Slusarz &lt;marcin.slusarz@gmail.com&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: stable &lt;stable@kernel.org&gt; [2.6.27, 2.6.28]
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix oops introduced by commit ae93a55bf948753de0bb8e43fa9c027f786abb05
(emi26: use request_firmware()):

usb 1-1: new full speed USB device using uhci_hcd and address 2
usb 1-1: configuration #1 chosen from 1 choice
emi26 - firmware loader 1-1:1.0: emi26_probe start
usb 1-1: firmware: requesting emi26/loader.fw
usb 1-1: firmware: requesting emi26/bitstream.fw
usb 1-1: firmware: requesting emi26/firmware.fw
usb 1-1: emi26_set_reset - 1
usb 1-1: emi26_set_reset - 0
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [&lt;f80dc487&gt;] emi26_probe+0x2f7/0x620 [emi26]
*pde = 00000000
Oops: 0000 [#1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:1d.0/usb1/1-1/firmware/1-1/loading
Modules linked in: emi26(+) ipv6 cpufreq_ondemand coretemp arc4 ecb iwl3945 irtty_sir sir_dev nsc_ircc ehci_hcd uhci_hcd mac80211 irda usbcore snd_hda_intel thinkpad_acpi rfkill hwmon led_class e1000e snd_pcm cfg80211 snd_timer crc_ccitt snd snd_page_alloc aes_generic

Pid: 5082, comm: modprobe Not tainted (2.6.28 #2) 17023QG
EIP: 0060:[&lt;f80dc487&gt;] EFLAGS: 00010206 CPU: 0
EIP is at emi26_probe+0x2f7/0x620 [emi26]
EAX: 0000015c EBX: 00000000 ECX: c1ffd9c0 EDX: 00000000
ESI: 0000015c EDI: f6bb215c EBP: f6bb0400 ESP: f00ebcfc
 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process modprobe (pid: 5082, ti=f00ea000 task=f5c7c700 task.ti=f00ea000)
Stack:
 0000015c 000000a5 f6a67cb8 f80dc7e0 c01c6262 fbef2986 f6bb2000 00008fe0
 0000015c f715f748 f715f740 f715f738 f715f748 f6a67c00 f80dd040 f80dcfc0
 f6bb0400 fbacb290 f6a67c94 fbae0160 c01c70bf 00000000 f6a67c1c 00000000
Call Trace:
 [&lt;c01c6262&gt;] sysfs_add_one+0x12/0x50
 [&lt;fbacb290&gt;] usb_probe_interface+0xa0/0x140 [usbcore]
 [&lt;c01c70bf&gt;] sysfs_create_link+0xf/0x20
 [&lt;c02dead2&gt;] driver_probe_device+0x82/0x180
 [&lt;fbac9eeb&gt;] usb_match_id+0x3b/0x50 [usbcore]
 [&lt;c02dec4e&gt;] __driver_attach+0x7e/0x80
 [&lt;c02de27a&gt;] bus_for_each_dev+0x3a/0x60
 [&lt;c02de956&gt;] driver_attach+0x16/0x20
 [&lt;c02debd0&gt;] __driver_attach+0x0/0x80
 [&lt;c02de7b1&gt;] bus_add_driver+0x1a1/0x220
 [&lt;c02dee4d&gt;] driver_register+0x4d/0x120
 [&lt;c024e622&gt;] idr_get_empty_slot+0xf2/0x290
 [&lt;fbacab71&gt;] usb_register_driver+0x81/0x100 [usbcore]
 [&lt;f806c000&gt;] emi26_init+0x0/0x14 [emi26]
 [&lt;c0101126&gt;] do_one_initcall+0x36/0x1b0
 [&lt;c01c5e70&gt;] sysfs_ilookup_test+0x0/0x10
 [&lt;c0197a61&gt;] ifind+0x31/0x90
 [&lt;c01c6229&gt;] __sysfs_add_one+0x59/0x80
 [&lt;c01c64e4&gt;] sysfs_addrm_finish+0x14/0x1c0
 [&lt;c0175ca3&gt;] __vunmap+0xa3/0xd0
 [&lt;c014b854&gt;] load_module+0x1544/0x1640
 [&lt;c014b9d7&gt;] sys_init_module+0x87/0x1b0
 [&lt;c0187f41&gt;] sys_read+0x41/0x70
 [&lt;c01032a5&gt;] sysenter_do_call+0x12/0x21
 [&lt;c03d0000&gt;] wait_for_common+0x40/0x110
Code: 66 c1 e8 08 66 09 d0 75 a5 31 d2 89 e8 e8 72 fc ff ff 85 c0 0f 88 9a 02 00 00 b8 fa 00 00 00 e8 30 46 05 c8 8b 74 24 28 8b 5e 04 &lt;8b&gt; 03 89 44 24 1c 0f c8 89 44 24 1c 0f b7 4b 04 c7 44 24 20 00
EIP: [&lt;f80dc487&gt;] emi26_probe+0x2f7/0x620 [emi26] SS:ESP 0068:f00ebcfc
---[ end trace 2eefa13825431230 ]---

After the last "package" of firmware data is sent to the device, we dereference
NULL pointer (on access to rec-&gt;addr). Fix it.

Reported--by: David Flatz &lt;david@upcs.at&gt;
Tested-by: David Flatz &lt;david@upcs.at&gt;
Signed-off-by: Marcin Slusarz &lt;marcin.slusarz@gmail.com&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: stable &lt;stable@kernel.org&gt; [2.6.27, 2.6.28]
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: power availability check for berry_charge</title>
<updated>2009-01-07T17:59:51+00:00</updated>
<author>
<name>Oliver Neukum</name>
<email>oliver@neukum.org</email>
</author>
<published>2008-02-01T21:44:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=b404299f6bfdf5aa7315e521b570e33f082b2f9e'/>
<id>b404299f6bfdf5aa7315e521b570e33f082b2f9e</id>
<content type='text'>
this introduces a sanity check into berry_charge to give up before
damage is done if we lack juice.

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

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
this introduces a sanity check into berry_charge to give up before
damage is done if we lack juice.

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

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: clean up redundant tests on unsigned</title>
<updated>2009-01-07T17:59:49+00:00</updated>
<author>
<name>roel kluin</name>
<email>roel.kluin@gmail.com</email>
</author>
<published>2008-10-21T04:47:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=e64a5219296fff11a0da0322b43012265cd3b327'/>
<id>e64a5219296fff11a0da0322b43012265cd3b327</id>
<content type='text'>
temp, bytes and param-&gt;{length,sglen,vary} are unsigned so
these tests do nothing.

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
temp, bytes and param-&gt;{length,sglen,vary} are unsigned so
these tests do nothing.

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: SISUSB2VGA driver: add 0x0711, 0x0903</title>
<updated>2008-11-13T22:45:03+00:00</updated>
<author>
<name>Albert Comerma</name>
<email>albert@ecm.ub.es</email>
</author>
<published>2008-11-04T18:44:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=859ff4072027ea7741121b902c59763f090e00c2'/>
<id>859ff4072027ea7741121b902c59763f090e00c2</id>
<content type='text'>
Signed-off-by: Albert Comerma &lt;albert.comerma@gmail.com&gt;
Cc: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Cc: David Brownell &lt;david-b@pacbell.net&gt;
Cc: Mauro Carvalho Chehab &lt;mchehab@infradead.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Albert Comerma &lt;albert.comerma@gmail.com&gt;
Cc: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Cc: David Brownell &lt;david-b@pacbell.net&gt;
Cc: Mauro Carvalho Chehab &lt;mchehab@infradead.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: vstusb: fix compiler warning on x86-64</title>
<updated>2008-11-13T22:45:00+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-10-31T17:09:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=6c5ab376b0b579cf58f9217dcd7a94d817f7a043'/>
<id>6c5ab376b0b579cf58f9217dcd7a94d817f7a043</id>
<content type='text'>
This fixes a reported compiler warning.

Reported-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes a reported compiler warning.

Reported-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>USB: usbtest.c: length, sglen and vary are unsigned, so cannot be negative</title>
<updated>2008-10-22T17:05:28+00:00</updated>
<author>
<name>roel kluin</name>
<email>roel.kluin@gmail.com</email>
</author>
<published>2008-10-21T04:36:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=8aafdf6a1528b0672a0527be473d9be5a12289d3'/>
<id>8aafdf6a1528b0672a0527be473d9be5a12289d3</id>
<content type='text'>
length, sglen and vary are unsigned, so cannot be negative

see
vi drivers/usb/misc/usbtest.c +18
struct usbtest_param {
...
        unsigned                iterations;
        unsigned                length;
        unsigned                vary;
        unsigned                sglen;
...
};

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
length, sglen and vary are unsigned, so cannot be negative

see
vi drivers/usb/misc/usbtest.c +18
struct usbtest_param {
...
        unsigned                iterations;
        unsigned                length;
        unsigned                vary;
        unsigned                sglen;
...
};

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: remove err() macro from usb misc drivers</title>
<updated>2008-10-17T21:41:13+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-08-14T16:37:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=fd3f1917e345d852ef9ae36178719f4e639f70ae'/>
<id>fd3f1917e345d852ef9ae36178719f4e639f70ae</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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: remove info() macro from usb/misc drivers</title>
<updated>2008-10-17T21:41:09+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-08-18T20:21:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=1b29a375fb0b79a11a2d18e7bf5f6da422a35025'/>
<id>1b29a375fb0b79a11a2d18e7bf5f6da422a35025</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.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
USB should not be having it's own printk macros, so remove info() and
use the system-wide standard of dev_info() wherever possible.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>USB: remove warn() macro from usb drivers</title>
<updated>2008-10-17T21:41:09+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-08-14T16:37:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=3b6004f3b5a8b4506fa8dee29667aed44913a990'/>
<id>3b6004f3b5a8b4506fa8dee29667aed44913a990</id>
<content type='text'>
USB should not be having it's own printk macros, so remove warn() and
use the system-wide standard of dev_warn() 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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
USB should not be having it's own printk macros, so remove warn() and
use the system-wide standard of dev_warn() 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;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: fix up problems in the vtusb driver</title>
<updated>2008-10-17T21:41:04+00:00</updated>
<author>
<name>Stephen Ware</name>
<email>stephen.ware@eqware.net</email>
</author>
<published>2008-10-08T17:53:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/linux.git/commit/?id=84dcd594952bf9b95b3901516a61e57abdf54d62'/>
<id>84dcd594952bf9b95b3901516a61e57abdf54d62</id>
<content type='text'>
Add range check on buffer sizes passed in from user space
(max is 8*PAGE_SIZE) which will work for the most common
spectrometers even at pages as small as 1K.

Add kref to vst device structure to preserve reference to the
usb object until we truly are done with it.

From: Stephen Ware &lt;stephen.ware@eqware.net&gt;
From: Dennis O'Brien &lt;dennis.obrien@eqware.net&gt;
Signed-off-by: Dennis O'Brien &lt;dennis.obrien@eqware.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add range check on buffer sizes passed in from user space
(max is 8*PAGE_SIZE) which will work for the most common
spectrometers even at pages as small as 1K.

Add kref to vst device structure to preserve reference to the
usb object until we truly are done with it.

From: Stephen Ware &lt;stephen.ware@eqware.net&gt;
From: Dennis O'Brien &lt;dennis.obrien@eqware.net&gt;
Signed-off-by: Dennis O'Brien &lt;dennis.obrien@eqware.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
</feed>
