<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/staging, branch v3.0.22</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>staging: r8712u: Add new Sitecom UsB ID</title>
<updated>2012-02-13T19:06:12+00:00</updated>
<author>
<name>Larry Finger</name>
<email>Larry.Finger@lwfinger.net</email>
</author>
<published>2012-01-07T16:07:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=fc2286972bd426b03fe64d79d39d9ff9ac1c4cc3'/>
<id>fc2286972bd426b03fe64d79d39d9ff9ac1c4cc3</id>
<content type='text'>
commit 1793bf1deddc8ce25dc41925d5dbe64536c841b6 upstream.

Add USB ID for SITECOM WLA-1000 V1 001 WLAN

Reported-and-tested-by: Roland Gruber &lt;post@rolandgruber.de&gt;
Reported-and-tested-by: Dario Lucia &lt;dario.lucia@gmail.com&gt;
Signed-off-by: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 1793bf1deddc8ce25dc41925d5dbe64536c841b6 upstream.

Add USB ID for SITECOM WLA-1000 V1 001 WLAN

Reported-and-tested-by: Roland Gruber &lt;post@rolandgruber.de&gt;
Reported-and-tested-by: Dario Lucia &lt;dario.lucia@gmail.com&gt;
Signed-off-by: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: asus_oled: fix NULL-ptr crash on unloading</title>
<updated>2012-02-13T19:06:12+00:00</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2012-01-22T14:33:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=946972e6ab9c59142f5cb51f31ea36a090f2ce16'/>
<id>946972e6ab9c59142f5cb51f31ea36a090f2ce16</id>
<content type='text'>
commit 3589e74595a4332ebf77b5ed006f3c6686071ecd upstream.

Asus_oled triggers the following bug on module unloading:

 usbcore: deregistering interface driver asus-oled
 BUG: unable to handle kernel NULL pointer dereference at 0000000000000038
 IP: [&lt;ffffffff8111292b&gt;] sysfs_delete_link+0x30/0x66

 Call Trace:
  [&lt;ffffffff81225373&gt;] device_remove_class_symlinks+0x6b/0x70
  [&lt;ffffffff812256a8&gt;] device_del+0x9f/0x1ab
  [&lt;ffffffff812257c5&gt;] device_unregister+0x11/0x1e
  [&lt;ffffffffa000cb82&gt;] asus_oled_disconnect+0x4f/0x9e [asus_oled]
  [&lt;ffffffff81277430&gt;] usb_unbind_interface+0x54/0x103
  [&lt;ffffffff812276c4&gt;] __device_release_driver+0xa2/0xeb
  [&lt;ffffffff81227794&gt;] driver_detach+0x87/0xad
  [&lt;ffffffff812269e9&gt;] bus_remove_driver+0x91/0xc1
  [&lt;ffffffff81227fb4&gt;] driver_unregister+0x66/0x6e
  [&lt;ffffffff812771ed&gt;] usb_deregister+0xbb/0xc4
  [&lt;ffffffffa000ce87&gt;] asus_oled_exit+0x2f/0x31 [asus_oled]
  [&lt;ffffffff81068365&gt;] sys_delete_module+0x1b8/0x21b
  [&lt;ffffffff810ae3de&gt;] ? do_munmap+0x2ef/0x313
  [&lt;ffffffff813699bb&gt;] system_call_fastpath+0x16/0x1b

This is due to an incorrect destruction sequence in asus_oled_exit().

Fix the order, fixes the bug. Tested on an Asus G50V laptop only.

Cc: Jakub Schmidtke &lt;sjakub@gmail.com&gt;
Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 3589e74595a4332ebf77b5ed006f3c6686071ecd upstream.

Asus_oled triggers the following bug on module unloading:

 usbcore: deregistering interface driver asus-oled
 BUG: unable to handle kernel NULL pointer dereference at 0000000000000038
 IP: [&lt;ffffffff8111292b&gt;] sysfs_delete_link+0x30/0x66

 Call Trace:
  [&lt;ffffffff81225373&gt;] device_remove_class_symlinks+0x6b/0x70
  [&lt;ffffffff812256a8&gt;] device_del+0x9f/0x1ab
  [&lt;ffffffff812257c5&gt;] device_unregister+0x11/0x1e
  [&lt;ffffffffa000cb82&gt;] asus_oled_disconnect+0x4f/0x9e [asus_oled]
  [&lt;ffffffff81277430&gt;] usb_unbind_interface+0x54/0x103
  [&lt;ffffffff812276c4&gt;] __device_release_driver+0xa2/0xeb
  [&lt;ffffffff81227794&gt;] driver_detach+0x87/0xad
  [&lt;ffffffff812269e9&gt;] bus_remove_driver+0x91/0xc1
  [&lt;ffffffff81227fb4&gt;] driver_unregister+0x66/0x6e
  [&lt;ffffffff812771ed&gt;] usb_deregister+0xbb/0xc4
  [&lt;ffffffffa000ce87&gt;] asus_oled_exit+0x2f/0x31 [asus_oled]
  [&lt;ffffffff81068365&gt;] sys_delete_module+0x1b8/0x21b
  [&lt;ffffffff810ae3de&gt;] ? do_munmap+0x2ef/0x313
  [&lt;ffffffff813699bb&gt;] system_call_fastpath+0x16/0x1b

This is due to an incorrect destruction sequence in asus_oled_exit().

Fix the order, fixes the bug. Tested on an Asus G50V laptop only.

Cc: Jakub Schmidtke &lt;sjakub@gmail.com&gt;
Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: asus_oled: fix image processing</title>
<updated>2012-02-13T19:06:12+00:00</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2012-01-22T14:33:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=3f64466ca0f04dc2b138a3c1e348a7e15b91ebba'/>
<id>3f64466ca0f04dc2b138a3c1e348a7e15b91ebba</id>
<content type='text'>
commit 635032cb397b396241372fa0ff36ae758e658b23 upstream.

Programming an image was broken, because odev-&gt;buf_offs was not advanced
for val == 0 in append_values(). This regression was introduced in:

 commit 1ff12a4aa354bed093a0240d5e6347b1e27601bc
 Author: Kevin A. Granade &lt;kevin.granade@gmail.com&gt;
 Date:   Sat Sep 5 01:03:39 2009 -0500

     Staging: asus_oled: Cleaned up checkpatch issues.

Fix the image processing by special-casing val == 0.

I have tested this change on an Asus G50V laptop only.

Cc: Jakub Schmidtke &lt;sjakub@gmail.com&gt;
Cc: Kevin A. Granade &lt;kevin.granade@gmail.com&gt;
Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 635032cb397b396241372fa0ff36ae758e658b23 upstream.

Programming an image was broken, because odev-&gt;buf_offs was not advanced
for val == 0 in append_values(). This regression was introduced in:

 commit 1ff12a4aa354bed093a0240d5e6347b1e27601bc
 Author: Kevin A. Granade &lt;kevin.granade@gmail.com&gt;
 Date:   Sat Sep 5 01:03:39 2009 -0500

     Staging: asus_oled: Cleaned up checkpatch issues.

Fix the image processing by special-casing val == 0.

I have tested this change on an Asus G50V laptop only.

Cc: Jakub Schmidtke &lt;sjakub@gmail.com&gt;
Cc: Kevin A. Granade &lt;kevin.granade@gmail.com&gt;
Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>staging: r8712u: Add new USB ID</title>
<updated>2011-12-21T20:57:44+00:00</updated>
<author>
<name>Larry Finger</name>
<email>Larry.Finger@lwfinger.net</email>
</author>
<published>2011-12-11T16:27:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=fa0bd1d27724944e5c8a93ebfdf70af50bec9972'/>
<id>fa0bd1d27724944e5c8a93ebfdf70af50bec9972</id>
<content type='text'>
commit c7caf4d4c56aee40b995f5858ccf1c814f3d2da2 upstream.

Add USB ID for Sitecom WLA-2000 v1.001 WLAN.

Reported-and-tested-by: Roland Gruber &lt;post@rolandgruber.de&gt;
Signed-off-by: Larry Finger &lt;Larry.Finger@lwfinger.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>
commit c7caf4d4c56aee40b995f5858ccf1c814f3d2da2 upstream.

Add USB ID for Sitecom WLA-2000 v1.001 WLAN.

Reported-and-tested-by: Roland Gruber &lt;post@rolandgruber.de&gt;
Signed-off-by: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: comedi: fix signal handling in read and write</title>
<updated>2011-12-09T16:52:40+00:00</updated>
<author>
<name>Federico Vaga</name>
<email>federico.vaga@gmail.com</email>
</author>
<published>2011-10-29T07:47:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=56448baac0c3d52501dc26868e15caba1811866d'/>
<id>56448baac0c3d52501dc26868e15caba1811866d</id>
<content type='text'>
commit 6a9ce6b654e491981f6ef7e214cbd4f63e033848 upstream.

After sleeping on a wait queue, signal_pending(current) should be
checked (not before sleeping).

Acked-by: Alessandro Rubini &lt;rubini@gnudd.com&gt;
Signed-off-by: Federico Vaga &lt;federico.vaga@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>
commit 6a9ce6b654e491981f6ef7e214cbd4f63e033848 upstream.

After sleeping on a wait queue, signal_pending(current) should be
checked (not before sleeping).

Acked-by: Alessandro Rubini &lt;rubini@gnudd.com&gt;
Signed-off-by: Federico Vaga &lt;federico.vaga@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: comedi: fix mmap_count</title>
<updated>2011-12-09T16:52:40+00:00</updated>
<author>
<name>Federico Vaga</name>
<email>federico.vaga@gmail.com</email>
</author>
<published>2011-10-29T07:45:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=261dbf437bce1d339c358e6566925905e49c13fe'/>
<id>261dbf437bce1d339c358e6566925905e49c13fe</id>
<content type='text'>
commit df30b21cb0eed5ba8a8e0cdfeebc66ba8cde821d upstream.

In comedi_fops, mmap_count is decremented at comedi_vm_ops-&gt;close but
it is not incremented at comedi_vm_ops-&gt;open. This may result in a negative
counter.  The patch introduces the open method to keep the counter
consistent.

The bug was triggerd by this sample code:

        mmap(0, ...., comedi_fd);
        fork();
        exit(0);

Acked-by: Alessandro Rubini &lt;rubini@gnudd.com&gt;
Signed-off-by: Federico Vaga &lt;federico.vaga@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>
commit df30b21cb0eed5ba8a8e0cdfeebc66ba8cde821d upstream.

In comedi_fops, mmap_count is decremented at comedi_vm_ops-&gt;close but
it is not incremented at comedi_vm_ops-&gt;open. This may result in a negative
counter.  The patch introduces the open method to keep the counter
consistent.

The bug was triggerd by this sample code:

        mmap(0, ...., comedi_fd);
        fork();
        exit(0);

Acked-by: Alessandro Rubini &lt;rubini@gnudd.com&gt;
Signed-off-by: Federico Vaga &lt;federico.vaga@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>staging: comedi: fix oops for USB DAQ devices.</title>
<updated>2011-12-09T16:52:40+00:00</updated>
<author>
<name>Bernd Porr</name>
<email>berndporr@f2s.com</email>
</author>
<published>2011-11-08T21:23:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=9649803f2de0d2e77bdd7c5e1cbd4a7b3833f1e8'/>
<id>9649803f2de0d2e77bdd7c5e1cbd4a7b3833f1e8</id>
<content type='text'>
commit 3ffab428f40849ed5f21bcfd7285bdef7902f9ca upstream.

This fixes kernel oops when an USB DAQ device is plugged out while it's
communicating with the userspace software.

Signed-off-by: Bernd Porr &lt;berndporr@f2s.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>
commit 3ffab428f40849ed5f21bcfd7285bdef7902f9ca upstream.

This fixes kernel oops when an USB DAQ device is plugged out while it's
communicating with the userspace software.

Signed-off-by: Bernd Porr &lt;berndporr@f2s.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>staging: usbip: bugfix for deadlock</title>
<updated>2011-12-09T16:52:39+00:00</updated>
<author>
<name>Bart Westgeest</name>
<email>bart@elbrys.com</email>
</author>
<published>2011-11-01T19:01:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0a4527cdb58e712456e9c9e491df37fadd2d9256'/>
<id>0a4527cdb58e712456e9c9e491df37fadd2d9256</id>
<content type='text'>
commit 438957f8d4a84daa7fa5be6978ad5897a2e9e5e5 upstream.

Interrupts must be disabled prior to calling usb_hcd_unlink_urb_from_ep.
If interrupts are not disabled, it can potentially lead to a deadlock.
The deadlock is readily reproduceable on a slower (ARM based) device
such as the TI Pandaboard.

Signed-off-by: Bart Westgeest &lt;bart@elbrys.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>
commit 438957f8d4a84daa7fa5be6978ad5897a2e9e5e5 upstream.

Interrupts must be disabled prior to calling usb_hcd_unlink_urb_from_ep.
If interrupts are not disabled, it can potentially lead to a deadlock.
The deadlock is readily reproduceable on a slower (ARM based) device
such as the TI Pandaboard.

Signed-off-by: Bart Westgeest &lt;bart@elbrys.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: hv: Add support for &gt;2 TB LUN in storage driver.</title>
<updated>2011-11-11T17:35:14+00:00</updated>
<author>
<name>Mike Sterling</name>
<email>mike.sterling@microsoft.com</email>
</author>
<published>2011-09-06T23:10:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=70908d994241bb79e4f3c546f6ddd262567610c6'/>
<id>70908d994241bb79e4f3c546f6ddd262567610c6</id>
<content type='text'>
commit cf55f4a8b6243b42fb91c56d1421db0d36d60f96 upstream.

If a LUN larger than 2 TB is attached to a Linux VM on Hyper-V, we currently
report a maximum size of 2 TB. This patch resolves the issue in hv_storvsc.
Thanks to Robert Scheck &lt;robert.scheck@etes.de&gt; for reporting the issue.

Reported-by: Robert Scheck &lt;robert.scheck@etes.de&gt;
Signed-off-by: Mike Sterling &lt;mike.sterling@microsoft.com&gt;
Signed-off-by: K.Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Haiyang Zhang &lt;haiyangz@microsoft.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>
commit cf55f4a8b6243b42fb91c56d1421db0d36d60f96 upstream.

If a LUN larger than 2 TB is attached to a Linux VM on Hyper-V, we currently
report a maximum size of 2 TB. This patch resolves the issue in hv_storvsc.
Thanks to Robert Scheck &lt;robert.scheck@etes.de&gt; for reporting the issue.

Reported-by: Robert Scheck &lt;robert.scheck@etes.de&gt;
Signed-off-by: Mike Sterling &lt;mike.sterling@microsoft.com&gt;
Signed-off-by: K.Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Haiyang Zhang &lt;haiyangz@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>staging: quatech_usb2: Potential lost wakeup scenario in TIOCMIWAIT</title>
<updated>2011-11-11T17:35:14+00:00</updated>
<author>
<name>Kautuk Consul</name>
<email>consul.kautuk@gmail.com</email>
</author>
<published>2011-09-14T03:26:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=828ed1259f73a85d47b417edd84e02bbbb52bb87'/>
<id>828ed1259f73a85d47b417edd84e02bbbb52bb87</id>
<content type='text'>
commit e8df1674d383d2ecc6efa8d7dba74c03aafdfdd7 upstream.

If the usermode app does an ioctl over this serial device  by
using TIOCMIWAIT, then the code will wait by setting the current
task state to TASK_INTERRUPTIBLE and then calling schedule().
This will be woken up by the qt2_process_modem_status on URB
completion when the port_extra-&gt;shadowMSR is set to the new
modem status.

However, this could result in a lost wakeup scenario due to a race
in the logic in the qt2_ioctl(TIOCMIWAIT) loop and the URB completion
for new modem status in qt2_process_modem_status.
Due to this, the usermode app's task will continue to sleep despite a
change in the modem status.

Signed-off-by: Kautuk Consul &lt;consul.kautuk@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>
commit e8df1674d383d2ecc6efa8d7dba74c03aafdfdd7 upstream.

If the usermode app does an ioctl over this serial device  by
using TIOCMIWAIT, then the code will wait by setting the current
task state to TASK_INTERRUPTIBLE and then calling schedule().
This will be woken up by the qt2_process_modem_status on URB
completion when the port_extra-&gt;shadowMSR is set to the new
modem status.

However, this could result in a lost wakeup scenario due to a race
in the logic in the qt2_ioctl(TIOCMIWAIT) loop and the URB completion
for new modem status in qt2_process_modem_status.
Due to this, the usermode app's task will continue to sleep despite a
change in the modem status.

Signed-off-by: Kautuk Consul &lt;consul.kautuk@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

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