<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/usb/misc/usbtest.c, branch linux-2.6.35.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.35.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.35.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2010-08-13T20:31:01+00:00</updated>
<entry>
<title>USB: usbtest: avoid to free coherent buffer in atomic context</title>
<updated>2010-08-13T20:31:01+00:00</updated>
<author>
<name>Ming Lei</name>
<email>tom.leiming@gmail.com</email>
</author>
<published>2010-08-02T14:09:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=733677e180eb390067ae5f53ef9ff7396aa8a07b'/>
<id>urn:sha1:733677e180eb390067ae5f53ef9ff7396aa8a07b</id>
<content type='text'>
commit e10e1bec8e6654de4591ef45ddd6a6d1e5b2591c upstream.

This patch fixes the warning below:
[30753.755998] ------------[ cut here ]------------
[30753.755998] WARNING: at /home/tom/git/linux-2.6/linux-2.6-next/arch/x86/include/asm/dma-mapping.h:155 hcd_buffer_free+0xb1/0xd4 [usbcore]()
[30753.755998] Hardware name: 6475EK2
[30753.755998] Modules linked in: uvcvideo ehci_hcd usbtest cdc_ether usbnet vfat fat usb_storage nfsd lockd nfs_acl auth_rpcgss exportfs mii tun videodev v4l1_compat v4l2_compat_ioctl32 fuse bridge stp llc sunrpc ipv6 cpufreq_ondemand acpi_cpufreq freq_table mperf kvm_intel kvm arc4 ecb ath5k usbhid mac80211 snd_hda_codec_conexant ch341 usbserial ath cfg80211 thinkpad_acpi snd_hda_intel pcspkr wmi hwmon yenta_socket iTCO_wdt iTCO_vendor_support i2c_i801 e1000e snd_hda_codec snd_hwdep snd_pcm snd_timer snd soundcore snd_page_alloc pata_acpi uhci_hcd ohci_hcd usbcore i915 drm_kms_helper drm i2c_algo_bit i2c_core video output [last unloaded: uvcvideo]
[30753.755998] Pid: 0, comm: swapper Tainted: G        W   2.6.35-rc6-gkh-wl+ #49
[30753.755998] Call Trace:
[30753.755998]  &lt;IRQ&gt;  [&lt;ffffffff8104478a&gt;] warn_slowpath_common+0x80/0x98
[30753.755998]  [&lt;ffffffff810447b7&gt;] warn_slowpath_null+0x15/0x17
[30753.755998]  [&lt;ffffffffa00ce02d&gt;] hcd_buffer_free+0xb1/0xd4 [usbcore]
[30753.755998]  [&lt;ffffffffa00c1345&gt;] usb_free_coherent+0x1c/0x1e [usbcore]
[30753.755998]  [&lt;ffffffffa00b13e4&gt;] simple_free_urb+0x23/0x2f [usbtest]
[30753.755998]  [&lt;ffffffffa00b210b&gt;] iso_callback+0xbb/0x10f [usbtest]
[30753.755998]  [&lt;ffffffffa00c7390&gt;] usb_hcd_giveback_urb+0x8c/0xc0 [usbcore]
[30753.755998]  [&lt;ffffffffa0449b35&gt;] ehci_urb_done+0x84/0x95 [ehci_hcd]
[30753.755998]  [&lt;ffffffffa044b5a5&gt;] ehci_work+0x41a/0x7dd [ehci_hcd]
[30753.755998]  [&lt;ffffffffa044e298&gt;] ehci_irq+0x33b/0x370 [ehci_hcd]
[30753.755998]  [&lt;ffffffff8100fb05&gt;] ? sched_clock+0x9/0xd
[30753.755998]  [&lt;ffffffff8105e641&gt;] ? sched_clock_local+0x1c/0x82
[30753.755998]  [&lt;ffffffff8105e76a&gt;] ? sched_clock_cpu+0xc3/0xce
[30753.755998]  [&lt;ffffffff81067c7e&gt;] ? trace_hardirqs_off+0xd/0xf
[30753.755998]  [&lt;ffffffff8105e7b8&gt;] ? cpu_clock+0x43/0x5e
[30753.755998]  [&lt;ffffffffa00c6999&gt;] usb_hcd_irq+0x45/0xa1 [usbcore]
[30753.755998]  [&lt;ffffffff81092e02&gt;] handle_IRQ_event+0x20/0xa5
[30753.755998]  [&lt;ffffffff81094cea&gt;] handle_fasteoi_irq+0x92/0xd2
[30753.755998]  [&lt;ffffffff8100c0ed&gt;] handle_irq+0x1f/0x2a
[30753.755998]  [&lt;ffffffff8100b75d&gt;] do_IRQ+0x57/0xbe
[30753.755998]  [&lt;ffffffff8136a693&gt;] ret_from_intr+0x0/0x16
[30753.755998]  &lt;EOI&gt;  [&lt;ffffffff81223baa&gt;] ? acpi_idle_enter_bm+0x231/0x269
[30753.755998]  [&lt;ffffffff81223ba3&gt;] ? acpi_idle_enter_bm+0x22a/0x269
[30753.755998]  [&lt;ffffffff812c4b6b&gt;] cpuidle_idle_call+0x99/0xce
[30753.755998]  [&lt;ffffffff81008dd5&gt;] cpu_idle+0x61/0xaa
[30753.755998]  [&lt;ffffffff8136374b&gt;] start_secondary+0x1c2/0x1c6
[30753.755998] ---[ end trace 904cfaf7ab4cb1a2 ]---

Signed-off-by: Ming Lei &lt;tom.leiming@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: rename usb_buffer_alloc() and usb_buffer_free() users</title>
<updated>2010-05-20T20:21:38+00:00</updated>
<author>
<name>Daniel Mack</name>
<email>daniel@caiaq.de</email>
</author>
<published>2010-04-12T11:17:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=997ea58eb92f9970b8af7aae48800d0ef43b9423'/>
<id>urn:sha1:997ea58eb92f9970b8af7aae48800d0ef43b9423</id>
<content type='text'>
For more clearance what the functions actually do,

  usb_buffer_alloc() is renamed to usb_alloc_coherent()
  usb_buffer_free()  is renamed to usb_free_coherent()

They should only be used in code which really needs DMA coherency.

All call sites have been changed accordingly, except for staging
drivers.

Signed-off-by: Daniel Mack &lt;daniel@caiaq.de&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: Pedro Ribeiro &lt;pedrib@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: remove uses of URB_NO_SETUP_DMA_MAP</title>
<updated>2010-05-20T20:21:31+00:00</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2010-03-05T20:10:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0ede76fcec5415ef82a423a95120286895822e2d'/>
<id>urn:sha1:0ede76fcec5415ef82a423a95120286895822e2d</id>
<content type='text'>
This patch (as1350) removes all usages of coherent buffers for USB
control-request setup-packet buffers.  There's no good reason to
reserve coherent memory for these things; control requests are hardly
ever used in large quantity (the major exception is firmware
transfers, and they aren't time-critical).  Furthermore, only seven
drivers used it.  We might as well always use streaming DMA mappings
for setup-packet buffers, and remove some extra complexity from
usbcore.

The DMA-mapping portion of hcd.c is currently in flux.  A separate
patch will be submitted to remove support for URB_NO_SETUP_DMA_MAP
after everything else settles down.  The removal should go smoothly,
as by then nobody will be using it.

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

</content>
</entry>
<entry>
<title>USB misc: make USB device id constant</title>
<updated>2010-03-02T22:54:17+00:00</updated>
<author>
<name>Németh Márton</name>
<email>nm127@freemail.hu</email>
</author>
<published>2010-01-10T14:34:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=33b9e16243fd69493be3ddda7be73226c8be586a'/>
<id>urn:sha1:33b9e16243fd69493be3ddda7be73226c8be586a</id>
<content type='text'>
The id_table field of the struct usb_device_id is constant in &lt;linux/usb.h&gt;
so it is worth to make the initialization data also constant.

The semantic match that finds this kind of pattern is as follows:
(http://coccinelle.lip6.fr/)

// &lt;smpl&gt;
@r@
disable decl_init,const_decl_init;
identifier I1, I2, x;
@@
	struct I1 {
	  ...
	  const struct I2 *x;
	  ...
	};
@s@
identifier r.I1, y;
identifier r.x, E;
@@
	struct I1 y = {
	  .x = E,
	};
@c@
identifier r.I2;
identifier s.E;
@@
	const struct I2 E[] = ... ;
@depends on !c@
identifier r.I2;
identifier s.E;
@@
+	const
	struct I2 E[] = ...;
// &lt;/smpl&gt;

Signed-off-by: Németh Márton &lt;nm127@freemail.hu&gt;
Cc: Julia Lawall &lt;julia@diku.dk&gt;
Cc: cocci@diku.dk
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>USB: convert to the runtime PM framework</title>
<updated>2010-03-02T22:54:12+00:00</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2010-01-08T17:57:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9bbdf1e0afe771ca7650f9f476769310bee9d8f3'/>
<id>urn:sha1:9bbdf1e0afe771ca7650f9f476769310bee9d8f3</id>
<content type='text'>
This patch (as1329) converts the USB stack over to the PM core's
runtime PM framework.  This involves numerous changes throughout
usbcore, especially to hub.c and driver.c.  Perhaps the most notable
change is that CONFIG_USB_SUSPEND now depends on CONFIG_PM_RUNTIME
instead of CONFIG_PM.

Several fields in the usb_device and usb_interface structures are no
longer needed.  Some code which used to depend on CONFIG_USB_PM now
depends on CONFIG_USB_SUSPEND (requiring some rearrangement of header
files).

The only visible change in behavior should be that following a system
sleep (resume from RAM or resume from hibernation), autosuspended USB
devices will be resumed just like everything else.  They won't remain
suspended.  But if they aren't in use then they will naturally
autosuspend again in a few seconds.

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

</content>
</entry>
<entry>
<title>usbtest: make module param pattern writeable</title>
<updated>2009-12-11T19:55:22+00:00</updated>
<author>
<name>Vikram Pandita</name>
<email>vikram.pandita@ti.com</email>
</author>
<published>2009-11-10T03:24:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7f4e985448e82fe4a1cc0ae4fcecaf7e0301c07b'/>
<id>urn:sha1:7f4e985448e82fe4a1cc0ae4fcecaf7e0301c07b</id>
<content type='text'>
Allow module_param to be writeable. This allows us to change
the parameter if usbtest is built-in in the kernel.

Signed-off-by: Vikram Pandita &lt;vikram.pandita@ti.com&gt;
Signed-off-by: Anand Gadiyar &lt;gadiyar@ti.com&gt;
Cc: David Brownell &lt;david-b@pacbell.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: usbtest fix endless loop in unlink tests.</title>
<updated>2009-06-16T04:44:48+00:00</updated>
<author>
<name>Martin Fuzzey</name>
<email>mfuzzey@gmail.com</email>
</author>
<published>2009-06-04T21:20:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3b6c023f831e3179c42bbcff189c73628cd5ea4c'/>
<id>urn:sha1:3b6c023f831e3179c42bbcff189c73628cd5ea4c</id>
<content type='text'>
In tests 11 and 12 if the URB completes with an error status (eg babble)
the asynchrous unlink entered an endless loop trying to unlink
a non resubmitted URB.

Signed-off-by: Martin Fuzzey &lt;mfuzzey@gmail.com&gt;
Acked-by: David Brownell &lt;david-b@pacbell.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</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.radix-linux.su/kernel/linux.git/commit/?id=e64a5219296fff11a0da0322b43012265cd3b327'/>
<id>urn:sha1: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>
</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.radix-linux.su/kernel/linux.git/commit/?id=8aafdf6a1528b0672a0527be473d9be5a12289d3'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>Rename WARN() to WARNING() to clear the namespace</title>
<updated>2008-07-25T17:53:29+00:00</updated>
<author>
<name>Arjan van de Ven</name>
<email>arjan@linux.intel.com</email>
</author>
<published>2008-07-25T08:45:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b6c63937001889af6fe431aaba97e59d04e028e7'/>
<id>urn:sha1:b6c63937001889af6fe431aaba97e59d04e028e7</id>
<content type='text'>
We want to use WARN() as a variant of WARN_ON(), however a few drivers are
using WARN() internally.  This patch renames these to WARNING() to avoid the
namespace clash.  A few cases were defining but not using the thing, for those
cases I just deleted the definition.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Acked-by: Greg KH &lt;greg@kroah.com&gt;
Cc: Karsten Keil &lt;kkeil@suse.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
