<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers, branch v3.0-rc3</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip</title>
<updated>2011-06-13T17:47:04+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-13T17:47:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=80dadf86d607bc5f25cc384ac590ef8b49ae523a'/>
<id>80dadf86d607bc5f25cc384ac590ef8b49ae523a</id>
<content type='text'>
* 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  rtc: Staticize non-exported __rtc_set_alarm()
  rtc: Fix ioctl error path return
  ptp: Fix some locking bugs in ptp_read()
  ptp: Return -EFAULT on copy_to_user() errors
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  rtc: Staticize non-exported __rtc_set_alarm()
  rtc: Fix ioctl error path return
  ptp: Fix some locking bugs in ptp_read()
  ptp: Return -EFAULT on copy_to_user() errors
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip</title>
<updated>2011-06-13T17:45:49+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-13T17:45:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c78a9b9b8e36b8de302eddbe7a1688af3d9650ff'/>
<id>c78a9b9b8e36b8de302eddbe7a1688af3d9650ff</id>
<content type='text'>
* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  ftrace: Revert 8ab2b7efd ftrace: Remove unnecessary disabling of irqs
  kprobes/trace: Fix kprobe selftest for gcc 4.6
  ftrace: Fix possible undefined return code
  oprofile, dcookies: Fix possible circular locking dependency
  oprofile: Fix locking dependency in sync_start()
  oprofile: Free potentially owned tasks in case of errors
  oprofile, x86: Add comments to IBS LVT offset initialization
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  ftrace: Revert 8ab2b7efd ftrace: Remove unnecessary disabling of irqs
  kprobes/trace: Fix kprobe selftest for gcc 4.6
  ftrace: Fix possible undefined return code
  oprofile, dcookies: Fix possible circular locking dependency
  oprofile: Fix locking dependency in sync_start()
  oprofile: Free potentially owned tasks in case of errors
  oprofile, x86: Add comments to IBS LVT offset initialization
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'spi/merge' of git://git.secretlab.ca/git/linux-2.6</title>
<updated>2011-06-13T17:33:31+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-13T17:33:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=562d1ffed2082fc59fb72173b856822ffe781559'/>
<id>562d1ffed2082fc59fb72173b856822ffe781559</id>
<content type='text'>
* 'spi/merge' of git://git.secretlab.ca/git/linux-2.6:
  spi-pl022: Add missing return value update
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'spi/merge' of git://git.secretlab.ca/git/linux-2.6:
  spi-pl022: Add missing return value update
</pre>
</div>
</content>
</entry>
<entry>
<title>spi-pl022: Add missing return value update</title>
<updated>2011-06-13T15:18:45+00:00</updated>
<author>
<name>Virupax Sadashivpetimath</name>
<email>virupax.sadashivpetimath@stericsson.com</email>
</author>
<published>2011-06-13T10:53:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e3f88ae9960920598cad132c553019ee79ff3aca'/>
<id>e3f88ae9960920598cad132c553019ee79ff3aca</id>
<content type='text'>
Return error on out of range cpsdvsr value.

Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Virupax Sadashivpetimath &lt;virupax.sadashivpetimath@stericsson.com&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Return error on out of range cpsdvsr value.

Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Virupax Sadashivpetimath &lt;virupax.sadashivpetimath@stericsson.com&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6</title>
<updated>2011-06-12T18:04:11+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-12T18:04:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c7ca6b0fcfb309dbb3d81dc9315e960f6fb14cb9'/>
<id>c7ca6b0fcfb309dbb3d81dc9315e960f6fb14cb9</id>
<content type='text'>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:
  ide-cd: signedness warning fix again
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:
  ide-cd: signedness warning fix again
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6</title>
<updated>2011-06-12T18:03:29+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-12T18:03:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=08d63aac436b2ad35d9e864b9ebb05bc8b9bb653'/>
<id>08d63aac436b2ad35d9e864b9ebb05bc8b9bb653</id>
<content type='text'>
* 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6:
  gpio/basic_mmio: add missing include of spinlock_types.h
  gpio/nomadik: fix sleepmode for elder Nomadik
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6:
  gpio/basic_mmio: add missing include of spinlock_types.h
  gpio/nomadik: fix sleepmode for elder Nomadik
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2011-06-12T18:03:08+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-12T18:03:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=152b92db7ad2c6d6c11c8eab07e90b73a90c8b76'/>
<id>152b92db7ad2c6d6c11c8eab07e90b73a90c8b76</id>
<content type='text'>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (55 commits)
  ISDN, hfcsusb: Don't leak in hfcsusb_ph_info()
  netpoll: call dev_put() on error in netpoll_setup()
  net: ep93xx_eth: fix DMA API violations
  net: ep93xx_eth: drop GFP_DMA from call to dma_alloc_coherent()
  net: ep93xx_eth: allocate buffers using kmalloc()
  net: ep93xx_eth: pass struct device to DMA API functions
  ep93xx: set DMA masks for the ep93xx_eth
  vlan: Fix the ingress VLAN_FLAG_REORDER_HDR check
  dl2k: EEPROM CRC calculation wrong endianess on bigendian machine
  NET: am79c961: fix assembler warnings
  NET: am79c961: ensure multicast filter is correctly set at open
  NET: am79c961: ensure asm() statements are marked volatile
  ethtool.h: fix typos
  ep93xx_eth: Update MAINTAINERS
  ipv4: Fix packet size calculation for raw IPsec packets in __ip_append_data
  netpoll: prevent netpoll setup on slave devices
  net: pmtu_expires fixes
  gianfar:localized filer table
  iwlegacy: fix channel switch locking
  mac80211: fix IBSS teardown race
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (55 commits)
  ISDN, hfcsusb: Don't leak in hfcsusb_ph_info()
  netpoll: call dev_put() on error in netpoll_setup()
  net: ep93xx_eth: fix DMA API violations
  net: ep93xx_eth: drop GFP_DMA from call to dma_alloc_coherent()
  net: ep93xx_eth: allocate buffers using kmalloc()
  net: ep93xx_eth: pass struct device to DMA API functions
  ep93xx: set DMA masks for the ep93xx_eth
  vlan: Fix the ingress VLAN_FLAG_REORDER_HDR check
  dl2k: EEPROM CRC calculation wrong endianess on bigendian machine
  NET: am79c961: fix assembler warnings
  NET: am79c961: ensure multicast filter is correctly set at open
  NET: am79c961: ensure asm() statements are marked volatile
  ethtool.h: fix typos
  ep93xx_eth: Update MAINTAINERS
  ipv4: Fix packet size calculation for raw IPsec packets in __ip_append_data
  netpoll: prevent netpoll setup on slave devices
  net: pmtu_expires fixes
  gianfar:localized filer table
  iwlegacy: fix channel switch locking
  mac80211: fix IBSS teardown race
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>ISDN, hfcsusb: Don't leak in hfcsusb_ph_info()</title>
<updated>2011-06-12T01:59:07+00:00</updated>
<author>
<name>Jesper Juhl</name>
<email>jj@chaosbits.net</email>
</author>
<published>2011-06-11T06:36:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=84860c725364372a331589a600ce6a00437a14f8'/>
<id>84860c725364372a331589a600ce6a00437a14f8</id>
<content type='text'>
We leak the memory allocated to 'phi' when the variable goes out of scope
in hfcsusb_ph_info().

Signed-off-by: Jesper Juhl &lt;jj@chaosbits.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We leak the memory allocated to 'phi' when the variable goes out of scope
in hfcsusb_ph_info().

Signed-off-by: Jesper Juhl &lt;jj@chaosbits.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: ep93xx_eth: fix DMA API violations</title>
<updated>2011-06-11T23:25:16+00:00</updated>
<author>
<name>Mika Westerberg</name>
<email>mika.westerberg@iki.fi</email>
</author>
<published>2011-06-11T08:39:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f1c089e3192f1afdfa76226dc38ef81b08ac810d'/>
<id>f1c089e3192f1afdfa76226dc38ef81b08ac810d</id>
<content type='text'>
Russell King said:
&gt;
&gt; So, to summarize what its doing:
&gt;
&gt; 1. It allocates buffers for rx and tx.
&gt; 2. It maps them with dma_map_single().
&gt;       This transfers ownership of the buffer to the DMA device.
&gt; 3. In ep93xx_xmit,
&gt; 3a. It copies the data into the buffer with skb_copy_and_csum_dev()
&gt;       This violates the DMA buffer ownership rules - the CPU should
&gt;       not be writing to this buffer while it is (in principle) owned
&gt;       by the DMA device.
&gt; 3b. It then calls dma_sync_single_for_cpu() for the buffer.
&gt;       This transfers ownership of the buffer to the CPU, which surely
&gt;       is the wrong direction.
&gt; 4. In ep93xx_rx,
&gt; 4a. It calls dma_sync_single_for_cpu() for the buffer.
&gt;       This at least transfers the DMA buffer ownership to the CPU
&gt;       before the CPU reads the buffer
&gt; 4b. It then uses skb_copy_to_linear_data() to copy the data out.
&gt;       At no point does it transfer ownership back to the DMA device.
&gt; 5. When the driver is removed, it dma_unmap_single()'s the buffer.
&gt;       This transfers ownership of the buffer to the CPU.
&gt; 6. It frees the buffer.
&gt;
&gt; While it may work on ep93xx, it's not respecting the DMA API rules,
&gt; and with DMA debugging enabled it will probably encounter quite a few
&gt; warnings.

This patch fixes these violations.

Signed-off-by: Mika Westerberg &lt;mika.westerberg@iki.fi&gt;
Acked-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Acked-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;
Tested-by: Petr Stetiar &lt;ynezz@true.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Russell King said:
&gt;
&gt; So, to summarize what its doing:
&gt;
&gt; 1. It allocates buffers for rx and tx.
&gt; 2. It maps them with dma_map_single().
&gt;       This transfers ownership of the buffer to the DMA device.
&gt; 3. In ep93xx_xmit,
&gt; 3a. It copies the data into the buffer with skb_copy_and_csum_dev()
&gt;       This violates the DMA buffer ownership rules - the CPU should
&gt;       not be writing to this buffer while it is (in principle) owned
&gt;       by the DMA device.
&gt; 3b. It then calls dma_sync_single_for_cpu() for the buffer.
&gt;       This transfers ownership of the buffer to the CPU, which surely
&gt;       is the wrong direction.
&gt; 4. In ep93xx_rx,
&gt; 4a. It calls dma_sync_single_for_cpu() for the buffer.
&gt;       This at least transfers the DMA buffer ownership to the CPU
&gt;       before the CPU reads the buffer
&gt; 4b. It then uses skb_copy_to_linear_data() to copy the data out.
&gt;       At no point does it transfer ownership back to the DMA device.
&gt; 5. When the driver is removed, it dma_unmap_single()'s the buffer.
&gt;       This transfers ownership of the buffer to the CPU.
&gt; 6. It frees the buffer.
&gt;
&gt; While it may work on ep93xx, it's not respecting the DMA API rules,
&gt; and with DMA debugging enabled it will probably encounter quite a few
&gt; warnings.

This patch fixes these violations.

Signed-off-by: Mika Westerberg &lt;mika.westerberg@iki.fi&gt;
Acked-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Acked-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;
Tested-by: Petr Stetiar &lt;ynezz@true.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: ep93xx_eth: drop GFP_DMA from call to dma_alloc_coherent()</title>
<updated>2011-06-11T23:25:16+00:00</updated>
<author>
<name>Mika Westerberg</name>
<email>mika.westerberg@iki.fi</email>
</author>
<published>2011-06-11T08:39:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1f758a4341ac83289a549e6ba2d29a08cf639717'/>
<id>1f758a4341ac83289a549e6ba2d29a08cf639717</id>
<content type='text'>
Commit a197b59ae6e8 (mm: fail GFP_DMA allocations when ZONE_DMA is not
configured) made page allocator to return NULL if GFP_DMA is set but
CONFIG_ZONE_DMA is disabled.

This causes ep93xx_eth to fail:

 WARNING: at mm/page_alloc.c:2251 __alloc_pages_nodemask+0x11c/0x638()
 Modules linked in:
 [&lt;c0035498&gt;] (unwind_backtrace+0x0/0xf4) from [&lt;c0043da4&gt;] (warn_slowpath_common+0x48/0x60)
 [&lt;c0043da4&gt;] (warn_slowpath_common+0x48/0x60) from [&lt;c0043dd8&gt;] (warn_slowpath_null+0x1c/0x24)
 [&lt;c0043dd8&gt;] (warn_slowpath_null+0x1c/0x24) from [&lt;c0083b6c&gt;] (__alloc_pages_nodemask+0x11c/0x638)
 [&lt;c0083b6c&gt;] (__alloc_pages_nodemask+0x11c/0x638) from [&lt;c00366fc&gt;] (__dma_alloc+0x8c/0x3ec)
 [&lt;c00366fc&gt;] (__dma_alloc+0x8c/0x3ec) from [&lt;c0036adc&gt;] (dma_alloc_coherent+0x54/0x60)
 [&lt;c0036adc&gt;] (dma_alloc_coherent+0x54/0x60) from [&lt;c0227808&gt;] (ep93xx_open+0x20/0x864)
 [&lt;c0227808&gt;] (ep93xx_open+0x20/0x864) from [&lt;c0283144&gt;] (__dev_open+0xb8/0x108)
 [&lt;c0283144&gt;] (__dev_open+0xb8/0x108) from [&lt;c0280528&gt;] (__dev_change_flags+0x70/0x128)
 [&lt;c0280528&gt;] (__dev_change_flags+0x70/0x128) from [&lt;c0283054&gt;] (dev_change_flags+0x10/0x48)
 [&lt;c0283054&gt;] (dev_change_flags+0x10/0x48) from [&lt;c001a720&gt;] (ip_auto_config+0x190/0xf68)
 [&lt;c001a720&gt;] (ip_auto_config+0x190/0xf68) from [&lt;c00233b0&gt;] (do_one_initcall+0x34/0x18c)
 [&lt;c00233b0&gt;] (do_one_initcall+0x34/0x18c) from [&lt;c0008400&gt;] (kernel_init+0x94/0x134)
 [&lt;c0008400&gt;] (kernel_init+0x94/0x134) from [&lt;c0030858&gt;] (kernel_thread_exit+0x0/0x8)

Since there is no restrictions for DMA on ep93xx, we can fix this by just
removing the GFP_DMA flag from the call.

Signed-off-by: Mika Westerberg &lt;mika.westerberg@iki.fi&gt;
Acked-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Acked-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;
Tested-by: Petr Stetiar &lt;ynezz@true.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit a197b59ae6e8 (mm: fail GFP_DMA allocations when ZONE_DMA is not
configured) made page allocator to return NULL if GFP_DMA is set but
CONFIG_ZONE_DMA is disabled.

This causes ep93xx_eth to fail:

 WARNING: at mm/page_alloc.c:2251 __alloc_pages_nodemask+0x11c/0x638()
 Modules linked in:
 [&lt;c0035498&gt;] (unwind_backtrace+0x0/0xf4) from [&lt;c0043da4&gt;] (warn_slowpath_common+0x48/0x60)
 [&lt;c0043da4&gt;] (warn_slowpath_common+0x48/0x60) from [&lt;c0043dd8&gt;] (warn_slowpath_null+0x1c/0x24)
 [&lt;c0043dd8&gt;] (warn_slowpath_null+0x1c/0x24) from [&lt;c0083b6c&gt;] (__alloc_pages_nodemask+0x11c/0x638)
 [&lt;c0083b6c&gt;] (__alloc_pages_nodemask+0x11c/0x638) from [&lt;c00366fc&gt;] (__dma_alloc+0x8c/0x3ec)
 [&lt;c00366fc&gt;] (__dma_alloc+0x8c/0x3ec) from [&lt;c0036adc&gt;] (dma_alloc_coherent+0x54/0x60)
 [&lt;c0036adc&gt;] (dma_alloc_coherent+0x54/0x60) from [&lt;c0227808&gt;] (ep93xx_open+0x20/0x864)
 [&lt;c0227808&gt;] (ep93xx_open+0x20/0x864) from [&lt;c0283144&gt;] (__dev_open+0xb8/0x108)
 [&lt;c0283144&gt;] (__dev_open+0xb8/0x108) from [&lt;c0280528&gt;] (__dev_change_flags+0x70/0x128)
 [&lt;c0280528&gt;] (__dev_change_flags+0x70/0x128) from [&lt;c0283054&gt;] (dev_change_flags+0x10/0x48)
 [&lt;c0283054&gt;] (dev_change_flags+0x10/0x48) from [&lt;c001a720&gt;] (ip_auto_config+0x190/0xf68)
 [&lt;c001a720&gt;] (ip_auto_config+0x190/0xf68) from [&lt;c00233b0&gt;] (do_one_initcall+0x34/0x18c)
 [&lt;c00233b0&gt;] (do_one_initcall+0x34/0x18c) from [&lt;c0008400&gt;] (kernel_init+0x94/0x134)
 [&lt;c0008400&gt;] (kernel_init+0x94/0x134) from [&lt;c0030858&gt;] (kernel_thread_exit+0x0/0x8)

Since there is no restrictions for DMA on ep93xx, we can fix this by just
removing the GFP_DMA flag from the call.

Signed-off-by: Mika Westerberg &lt;mika.westerberg@iki.fi&gt;
Acked-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Acked-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;
Tested-by: Petr Stetiar &lt;ynezz@true.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
