<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/usb/class, branch v3.2.2</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/usb/class?h=v3.2.2</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/usb/class?h=v3.2.2'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-01-12T19:29:46Z</updated>
<entry>
<title>usb: cdc-acm: Fix acm_tty_hangup() vs. acm_tty_close() race</title>
<updated>2012-01-12T19:29:46Z</updated>
<author>
<name>Thilo-Alexander Ginkel</name>
<email>thilo@ginkel.com</email>
</author>
<published>2011-12-17T09:55:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f9fd8d6232137e255fc9409a81cf282817472b6f'/>
<id>urn:sha1:f9fd8d6232137e255fc9409a81cf282817472b6f</id>
<content type='text'>
[Not upstream as it was fixed differently for 3.3 with a much more
"intrusive" rework of the driver - gregkh]

There is a race condition involving acm_tty_hangup() and acm_tty_close()
where hangup() would attempt to access tty-&gt;driver_data without proper
locking and NULL checking after close() has potentially already set it
to NULL.  One possibility to (sporadically) trigger this behavior is to
perform a suspend/resume cycle with a running WWAN data connection.

This patch addresses the issue by introducing a NULL check for
tty-&gt;driver_data in acm_tty_hangup() protected by open_mutex and exiting
gracefully when hangup() is invoked on a device that has already been
closed.

Signed-off-by: Thilo-Alexander Ginkel &lt;thilo@ginkel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>drivers/usb/class/cdc-acm.c: clear dangling pointer</title>
<updated>2012-01-12T19:29:38Z</updated>
<author>
<name>Julia Lawall</name>
<email>julia@diku.dk</email>
</author>
<published>2011-12-23T13:02:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=30234e2694cbc1d6985cafc87db5cd4848493196'/>
<id>urn:sha1:30234e2694cbc1d6985cafc87db5cd4848493196</id>
<content type='text'>
commit e7c8e8605d0bafc705ff27f9da98a1668427cc0f upstream.

On some failures, the country_code field of an acm structure is freed
without freeing the acm structure itself.  Elsewhere, operations including
memcpy and kfree are performed on the country_code field.  The patch sets
the country_code field to NULL when it is freed, and likewise sets the
country_code_size field to 0.

Signed-off-by: Julia Lawall &lt;julia@diku.dk&gt;
Acked-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: cdc-acm: add IDs for Motorola H24 HSPA USB module.</title>
<updated>2011-12-12T22:31:33Z</updated>
<author>
<name>Krzysztof Hałasa</name>
<email>khalasa@piap.pl</email>
</author>
<published>2011-12-12T13:51:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6abff5dc4d5a2c90e597137ce8987e7fd439259b'/>
<id>urn:sha1:6abff5dc4d5a2c90e597137ce8987e7fd439259b</id>
<content type='text'>
Add USB IDs for Motorola H24 HSPA USB module.

Signed-off-by: Krzysztof Hałasa &lt;khalasa@piap.pl&gt;
Acked-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>USB: cdc-acm: Fix disconnect() vs close() race</title>
<updated>2011-11-14T21:47:49Z</updated>
<author>
<name>Havard Skinnemoen</name>
<email>hskinnemoen@google.com</email>
</author>
<published>2011-11-09T21:47:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5dc2470c602da8851907ec18942cd876c3b4ecc1'/>
<id>urn:sha1:5dc2470c602da8851907ec18942cd876c3b4ecc1</id>
<content type='text'>
There's a race between the USB disconnect handler and the TTY close
handler which may cause the acm object to be freed while it's still
being used. This may lead to things like

http://article.gmane.org/gmane.linux.usb.general/54250

and

https://lkml.org/lkml/2011/5/29/64

This is the simplest fix I could come up with. Holding on to open_mutex
while closing the TTY device prevents acm_disconnect() from freeing the
acm object between acm-&gt;port.count drops to 0 and the TTY side of the
cleanups are finalized.

Signed-off-by: Havard Skinnemoen &lt;hskinnemoen@google.com&gt;
Cc: Oliver Neukum &lt;oliver@neukum.name&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'pm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm</title>
<updated>2011-10-25T13:18:39Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-10-25T13:18:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7e0bb71e75020348bee523720a0c2f04cc72f540'/>
<id>urn:sha1:7e0bb71e75020348bee523720a0c2f04cc72f540</id>
<content type='text'>
* 'pm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (63 commits)
  PM / Clocks: Remove redundant NULL checks before kfree()
  PM / Documentation: Update docs about suspend and CPU hotplug
  ACPI / PM: Add Sony VGN-FW21E to nonvs blacklist.
  ARM: mach-shmobile: sh7372 A4R support (v4)
  ARM: mach-shmobile: sh7372 A3SP support (v4)
  PM / Sleep: Mark devices involved in wakeup signaling during suspend
  PM / Hibernate: Improve performance of LZO/plain hibernation, checksum image
  PM / Hibernate: Do not initialize static and extern variables to 0
  PM / Freezer: Make fake_signal_wake_up() wake TASK_KILLABLE tasks too
  PM / Hibernate: Add resumedelay kernel param in addition to resumewait
  MAINTAINERS: Update linux-pm list address
  PM / ACPI: Blacklist Vaio VGN-FW520F machine known to require acpi_sleep=nonvs
  PM / ACPI: Blacklist Sony Vaio known to require acpi_sleep=nonvs
  PM / Hibernate: Add resumewait param to support MMC-like devices as resume file
  PM / Hibernate: Fix typo in a kerneldoc comment
  PM / Hibernate: Freeze kernel threads after preallocating memory
  PM: Update the policy on default wakeup settings
  PM / VT: Cleanup #if defined uglyness and fix compile error
  PM / Suspend: Off by one in pm_suspend()
  PM / Hibernate: Include storage keys in hibernation image on s390
  ...
</content>
</entry>
<entry>
<title>usb: cdc-acm: Owen SI-30 support</title>
<updated>2011-09-18T08:33:07Z</updated>
<author>
<name>Denis Pershin</name>
<email>dyp@perchine.com</email>
</author>
<published>2011-09-04T10:37:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=65e52f41fa944cef2e6d4222b8c54f46cc575214'/>
<id>urn:sha1:65e52f41fa944cef2e6d4222b8c54f46cc575214</id>
<content type='text'>
here is the patch to support Owen SI-30 device.
This is a pulse counter controller.
http://www.owen.ru/en/catalog/93788515

usb-drivers output:
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  4 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=02(commc) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=03eb ProdID=0030 Rev=01.01
C:  #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=00 Driver=cdc_acm
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm

This patch is installed on my home system which receives data from this
controller connected to cold water counter.

Signed-off-by: Denis Pershin &lt;dyp@perchine.com&gt;
Cc: stable &lt;stable@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&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>
<email>kuninori.morimoto.gx@renesas.com</email>
</author>
<published>2011-08-23T10:12:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/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>PM / Runtime: Add macro to test for runtime PM events</title>
<updated>2011-08-19T21:49:48Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2011-08-19T21:49:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5b1b0b812a7b1a5b968c5d06d90d1cb88621b941'/>
<id>urn:sha1:5b1b0b812a7b1a5b968c5d06d90d1cb88621b941</id>
<content type='text'>
This patch (as1482) adds a macro for testing whether or not a
pm_message value represents an autosuspend or autoresume (i.e., a
runtime PM) event.  Encapsulating this notion seems preferable to
open-coding the test all over the place.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Acked-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
</content>
</entry>
<entry>
<title>USB: assign instead of equal in usbtmc.c</title>
<updated>2011-08-08T19:34:45Z</updated>
<author>
<name>Maxim Nikulin</name>
<email>m.a.nikulin@gmail.com</email>
</author>
<published>2011-07-09T16:44:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4f1a7a3e78037721496283ea3e87cfefc64d99c7'/>
<id>urn:sha1:4f1a7a3e78037721496283ea3e87cfefc64d99c7</id>
<content type='text'>
Assign operator instead of equality test in the usbtmc_ioctl_abort_bulk_in() function.

Signed-off-by: Maxim A. Nikulin &lt;M.A.Nikulin@gmail.com&gt;
Cc: stable &lt;stable@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>usb/class: use printk_ratelimited() instead of printk_ratelimit()</title>
<updated>2011-07-01T21:43:24Z</updated>
<author>
<name>Manuel Zerpies</name>
<email>manuel.f.zerpies@ww.stud.uni-erlangen.de</email>
</author>
<published>2011-06-16T12:15:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=305e7be5d5724ced063fcf21c3df6bd0fed19a04'/>
<id>urn:sha1:305e7be5d5724ced063fcf21c3df6bd0fed19a04</id>
<content type='text'>
Since printk_ratelimit() shouldn't be used anymore (see comment in
include/linux/printk.h), replace it with printk_ratelimited()

Signed-off-by: Manuel Zerpies &lt;manuel.f.zerpies@ww.stud.uni-erlangen.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
</feed>
