<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/staging/usbip, branch linux-2.6.36.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>staging: usbip: remove double giveback of URB</title>
<updated>2011-02-17T22:46:36+00:00</updated>
<author>
<name>Márton Németh</name>
<email>nm127@freemail.hu</email>
</author>
<published>2010-12-13T20:59:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=2ffaca128dfd5a2de661b85d7d3cc045e24a2540'/>
<id>2ffaca128dfd5a2de661b85d7d3cc045e24a2540</id>
<content type='text'>
commit 7571f089d7522a95c103558faf313c7af8856ceb upstream.

In the vhci_urb_dequeue() function the TCP connection is checked twice.
Each time when the TCP connection is closed the URB is unlinked and given
back. Remove the second attempt of unlinking and giving back of the URB completely.

This patch fixes the bug described at https://bugzilla.kernel.org/show_bug.cgi?id=24872 .

Signed-off-by: Márton Németh &lt;nm127@freemail.hu&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 7571f089d7522a95c103558faf313c7af8856ceb upstream.

In the vhci_urb_dequeue() function the TCP connection is checked twice.
Each time when the TCP connection is closed the URB is unlinked and given
back. Remove the second attempt of unlinking and giving back of the URB completely.

This patch fixes the bug described at https://bugzilla.kernel.org/show_bug.cgi?id=24872 .

Signed-off-by: Márton Németh &lt;nm127@freemail.hu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>staging: usbip: Process event flags without delay</title>
<updated>2010-11-22T19:02:59+00:00</updated>
<author>
<name>Max Vozeler</name>
<email>mvz@vozeler.com</email>
</author>
<published>2010-09-21T15:43:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=044504aeacdd39c350b7eec10411349631527655'/>
<id>044504aeacdd39c350b7eec10411349631527655</id>
<content type='text'>
commit 584c5b7cf06194464240280483ee0376cdddbbae upstream.

The way the event handler works can cause it to delay
events until eventual wakeup for another event.

For example, on device detach (vhci):

 - Write to sysfs detach file
    -&gt; usbip_event_add(VDEV_EVENT_DOWN)
      -&gt; wakeup()

#define VDEV_EVENT_DOWN (USBIP_EH_SHUTDOWN | USBIP_EH_RESET).

 - Event thread wakes up and passes the event to
   event_handler() to process.

 - It processes and clears the USBIP_EH_SHUTDOWN
   flag then returns.

 - The outer event loop (event_handler_loop()) calls
   wait_event_interruptible().

The processing of the second flag which is part of
VDEV_EVENT_DOWN (USBIP_EH_RESET) did not happen yet.
It is delayed until the next event.

This means the -&gt;reset callback may not happen for
a long time (if ever), leaving the usbip port in a
weird state which prevents its reuse.

This patch changes the handler to process all flags
before waiting for another wakeup.

I have verified this change to fix a problem which
prevented reattach of a usbip device. It also helps
for socket errors which missed the RESET as well.

The delayed event processing also affects the stub
side of usbip and the error handling there.

Signed-off-by: Max Vozeler &lt;mvz@vozeler.com&gt;
Reported-by: Marco Lancione &lt;marco@optikam.com&gt;
Tested-by: Luc Jalbert &lt;ljalbert@optikam.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 584c5b7cf06194464240280483ee0376cdddbbae upstream.

The way the event handler works can cause it to delay
events until eventual wakeup for another event.

For example, on device detach (vhci):

 - Write to sysfs detach file
    -&gt; usbip_event_add(VDEV_EVENT_DOWN)
      -&gt; wakeup()

#define VDEV_EVENT_DOWN (USBIP_EH_SHUTDOWN | USBIP_EH_RESET).

 - Event thread wakes up and passes the event to
   event_handler() to process.

 - It processes and clears the USBIP_EH_SHUTDOWN
   flag then returns.

 - The outer event loop (event_handler_loop()) calls
   wait_event_interruptible().

The processing of the second flag which is part of
VDEV_EVENT_DOWN (USBIP_EH_RESET) did not happen yet.
It is delayed until the next event.

This means the -&gt;reset callback may not happen for
a long time (if ever), leaving the usbip port in a
weird state which prevents its reuse.

This patch changes the handler to process all flags
before waiting for another wakeup.

I have verified this change to fix a problem which
prevented reattach of a usbip device. It also helps
for socket errors which missed the RESET as well.

The delayed event processing also affects the stub
side of usbip and the error handling there.

Signed-off-by: Max Vozeler &lt;mvz@vozeler.com&gt;
Reported-by: Marco Lancione &lt;marco@optikam.com&gt;
Tested-by: Luc Jalbert &lt;ljalbert@optikam.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>staging: usbip: Notify usb core of port status changes</title>
<updated>2010-11-22T19:02:59+00:00</updated>
<author>
<name>Max Vozeler</name>
<email>mvz@vozeler.com</email>
</author>
<published>2010-09-21T15:31:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5457562857217720df04a10bb499709b08ac84d1'/>
<id>5457562857217720df04a10bb499709b08ac84d1</id>
<content type='text'>
commit 0c9a32f0192e656daa2ff3c9149f6d71b4a1b873 upstream.

This patch changes vhci to behave like dummy and
other hcds when disconnecting a device.

Previously detaching a device from the root hub
did not notify the usb core of the disconnect and
left the device visible.

Signed-off-by: Max Vozeler &lt;mvz@vozeler.com&gt;
Reported-by: Marco Lancione &lt;marco@optikam.com&gt;
Tested-by: Luc Jalbert &lt;ljalbert@optikam.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 0c9a32f0192e656daa2ff3c9149f6d71b4a1b873 upstream.

This patch changes vhci to behave like dummy and
other hcds when disconnecting a device.

Previously detaching a device from the root hub
did not notify the usb core of the disconnect and
left the device visible.

Signed-off-by: Max Vozeler &lt;mvz@vozeler.com&gt;
Reported-by: Marco Lancione &lt;marco@optikam.com&gt;
Tested-by: Luc Jalbert &lt;ljalbert@optikam.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>USB: convert usb_hcd bitfields into atomic flags</title>
<updated>2010-08-10T21:35:37+00:00</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2010-06-22T20:39:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=541c7d432f76771079e7c295d596ea47cc6a3030'/>
<id>541c7d432f76771079e7c295d596ea47cc6a3030</id>
<content type='text'>
This patch (as1393) converts several of the single-bit fields in
struct usb_hcd to atomic flags.  This is for safety's sake; not all
CPUs can update bitfield values atomically, and these flags are used
in multiple contexts.

The flag fields that are set only during registration or removal can
remain as they are, since non-atomic accesses at those times will not
cause any problems.

(Strictly speaking, the authorized_default flag should become atomic
as well.  I didn't bother with it because it gets changed only via
sysfs.  It can be done later, if anyone wants.)

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&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 patch (as1393) converts several of the single-bit fields in
struct usb_hcd to atomic flags.  This is for safety's sake; not all
CPUs can update bitfield values atomically, and these flags are used
in multiple contexts.

The flag fields that are set only during registration or removal can
remain as they are, since non-atomic accesses at those times will not
cause any problems.

(Strictly speaking, the authorized_default flag should become atomic
as well.  I didn't bother with it because it gets changed only via
sysfs.  It can be done later, if anyone wants.)

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: Merge staging-next into Linus's tree</title>
<updated>2010-08-05T21:18:03+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2010-08-05T21:18:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=e9563355ac1175dd3440dc2ea5c28b27ed51a283'/>
<id>e9563355ac1175dd3440dc2ea5c28b27ed51a283</id>
<content type='text'>
Conflicts:
	drivers/staging/Kconfig
	drivers/staging/batman-adv/bat_sysfs.c
	drivers/staging/batman-adv/device.c
	drivers/staging/batman-adv/hard-interface.c
	drivers/staging/cx25821/cx25821-audups11.c

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	drivers/staging/Kconfig
	drivers/staging/batman-adv/bat_sysfs.c
	drivers/staging/batman-adv/device.c
	drivers/staging/batman-adv/hard-interface.c
	drivers/staging/cx25821/cx25821-audups11.c

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: usbip: fix up build error</title>
<updated>2010-07-27T18:12:21+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2010-07-27T18:12:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=3924865f7def7c1b46c0e47f058eb8173c72a16d'/>
<id>3924865f7def7c1b46c0e47f058eb8173c72a16d</id>
<content type='text'>
This dma flag is no longer in the kernel.  Remove it as it's pointless
and it causes a build error.

Cc: Endre Kollar &lt;taxy443@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>
This dma flag is no longer in the kernel.  Remove it as it's pointless
and it causes a build error.

Cc: Endre Kollar &lt;taxy443@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: usbip: Filtering illegal flags from remote driver</title>
<updated>2010-07-27T18:08:31+00:00</updated>
<author>
<name>Endre Kollar</name>
<email>taxy443@gmail.com</email>
</author>
<published>2010-07-27T10:40:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=b7a937e90c3631cf3662a518cf2e4bf07f72967c'/>
<id>b7a937e90c3631cf3662a518cf2e4bf07f72967c</id>
<content type='text'>
The usb_submit_urb function in debug mode monitors the bogus flags. The
client driver errors should not be conveyed to the local USB device.

Signed-off-by: Endre Kollar &lt;taxy443@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>
The usb_submit_urb function in debug mode monitors the bogus flags. The
client driver errors should not be conveyed to the local USB device.

Signed-off-by: Endre Kollar &lt;taxy443@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: usbip: simplify get_ep_from_epnum</title>
<updated>2010-07-27T18:08:31+00:00</updated>
<author>
<name>Endre Kollar</name>
<email>taxy443@gmail.com</email>
</author>
<published>2010-07-27T10:39:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=ab30f12d4ef11cc92fa9a657bf0c9b9951f24011'/>
<id>ab30f12d4ef11cc92fa9a657bf0c9b9951f24011</id>
<content type='text'>
usb_device-&gt;ep_in/out includes the necessary endpoints, search is not needed.

Signed-off-by: Endre Kollar &lt;taxy443@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>
usb_device-&gt;ep_in/out includes the necessary endpoints, search is not needed.

Signed-off-by: Endre Kollar &lt;taxy443@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Staging: usbip: fix multiple interfaces</title>
<updated>2010-07-27T18:06:29+00:00</updated>
<author>
<name>Endre Kollar</name>
<email>taxy443@gmail.com</email>
</author>
<published>2010-07-27T10:39:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=aa5873e96271611ae55586f65e49ea1fab90cb88'/>
<id>aa5873e96271611ae55586f65e49ea1fab90cb88</id>
<content type='text'>
The stub_probe function instantiates an stub_dev object  for all
interfaces. Wich causes a problem.  The stub_dev object belongs to their
own interfaces. This patch creates the sdev object at the first
stub_probe call, the other calls associate the interfaces to this.

Signed-off-by: Endre Kollar &lt;taxy443@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>
The stub_probe function instantiates an stub_dev object  for all
interfaces. Wich causes a problem.  The stub_dev object belongs to their
own interfaces. This patch creates the sdev object at the first
stub_probe call, the other calls associate the interfaces to this.

Signed-off-by: Endre Kollar &lt;taxy443@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>staging: usbip: fix memory leak</title>
<updated>2010-07-22T18:33:49+00:00</updated>
<author>
<name>Kulikov Vasiliy</name>
<email>segooon@gmail.com</email>
</author>
<published>2010-07-12T14:48:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=47c7157f3406e83648dad1c5c4e6e8c0f574dfc3'/>
<id>47c7157f3406e83648dad1c5c4e6e8c0f574dfc3</id>
<content type='text'>
sdev should be freed if stub_add_files() failed.

Signed-off-by: Kulikov Vasiliy &lt;segooon@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>
sdev should be freed if stub_add_files() failed.

Signed-off-by: Kulikov Vasiliy &lt;segooon@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
</feed>
