<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch/tile, branch v3.2.41</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch/tile?h=v3.2.41</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch/tile?h=v3.2.41'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-10-30T23:26:55Z</updated>
<entry>
<title>arch/tile: avoid generating .eh_frame information in modules</title>
<updated>2012-10-30T23:26:55Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2012-10-19T15:43:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5b0398effd52c5483c0f28d3473206386a264138'/>
<id>urn:sha1:5b0398effd52c5483c0f28d3473206386a264138</id>
<content type='text'>
commit 627072b06c362bbe7dc256f618aaa63351f0cfe6 upstream.

The tile tool chain uses the .eh_frame information for backtracing.
The vmlinux build drops any .eh_frame sections at link time, but when
present in kernel modules, it causes a module load failure due to the
presence of unsupported pc-relative relocations.  When compiling to
use compiler feedback support, the compiler by default omits .eh_frame
information, so we don't see this problem.  But when not using feedback,
we need to explicitly suppress the .eh_frame.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>tile: fix bug where fls(0) was not returning 0</title>
<updated>2012-05-30T23:44:03Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2012-05-25T16:32:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=10c9eea8f9831180c52bfbb0ddf9af6e51989a41'/>
<id>urn:sha1:10c9eea8f9831180c52bfbb0ddf9af6e51989a41</id>
<content type='text'>
commit 9f1d62bed7f015d11b9164078b7fea433b474114 upstream.

This is because __builtin_clz(0) returns 64 for the "undefined" case
of 0, since the builtin just does a right-shift 32 and "clz" instruction.
So, use the alpha approach of casting to u32 and using __builtin_clzll().

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>tilegx: enable SYSCALL_WRAPPERS support</title>
<updated>2012-05-30T23:43:19Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2012-05-18T17:33:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d58599222e9066cdd0e7ef4f6e8bd701146a3aa2'/>
<id>urn:sha1:d58599222e9066cdd0e7ef4f6e8bd701146a3aa2</id>
<content type='text'>
commit e6d9668e119af44ae5bcd5f1197174531458afe3 upstream.

Some discussion with the glibc mailing lists revealed that this was
necessary for 64-bit platforms with MIPS-like sign-extension rules
for 32-bit values.  The original symptom was that passing (uid_t)-1 to
setreuid() was failing in programs linked -pthread because of the "setxid"
mechanism for passing setxid-type function arguments to the syscall code.
SYSCALL_WRAPPERS handles ensuring that all syscall arguments end up with
proper sign-extension and is thus the appropriate fix for this problem.

On other platforms (s390, powerpc, sparc64, and mips) this was fixed
in 2.6.28.6.  The general issue is tracked as CVE-2009-0029.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>arch/tile/Kconfig: remove pointless "!M386" test.</title>
<updated>2012-05-30T23:43:18Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2012-03-27T17:47:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=31edc012f05bd1cea61df32b4f22f5227bba72d5'/>
<id>urn:sha1:31edc012f05bd1cea61df32b4f22f5227bba72d5</id>
<content type='text'>
commit 8d6951439ef524683057251f1231df232046b6b6 upstream.

Looks like a cut and paste bug from the x86 version.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>arch/tile: apply commit 74fca9da0 to the compat signal handling as well</title>
<updated>2012-05-20T21:56:50Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2012-05-16T18:54:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e3b9dca169250b65f4dbe2460bcf7efe7098f1b7'/>
<id>urn:sha1:e3b9dca169250b65f4dbe2460bcf7efe7098f1b7</id>
<content type='text'>
commit a134d228298c6aa9007205c6b81cae0cac0acb5d upstream.

This passes siginfo and mcontext to tilegx32 signal handlers that
don't have SA_SIGINFO set just as we have been doing for tilegx64.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>arch/tile: use new generic {enable,disable}_percpu_irq() routines</title>
<updated>2011-12-03T20:31:49Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2011-12-01T17:58:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0c90547b4a3fcee184db4d54ffc1a4fb17fd54d6'/>
<id>urn:sha1:0c90547b4a3fcee184db4d54ffc1a4fb17fd54d6</id>
<content type='text'>
We provided very similar routines internally, but now we can hook
into the generic framework by supplying our routines as function
pointers in the irq_chip structure instead.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
</content>
</entry>
<entry>
<title>arch/tile: fix double-free bug in homecache_free_pages()</title>
<updated>2011-12-03T20:31:47Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2011-12-01T17:51:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c2851a9b1caa420c2cdbd517617166990e3723c0'/>
<id>urn:sha1:c2851a9b1caa420c2cdbd517617166990e3723c0</id>
<content type='text'>
When freeing the page with this API, the page was "put" twice.
This was only discovered bringing up an MPT fusion controller, which
actually used the API; it hadn't been invoked previously, so the bug
had gone unnoticed.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
</content>
</entry>
<entry>
<title>arch/tile: add a few #includes and an EXPORT to catch up with kernel changes.</title>
<updated>2011-12-03T20:31:41Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2011-12-01T16:37:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3989efb77046ad334518b6cddcf817184affe7c9'/>
<id>urn:sha1:3989efb77046ad334518b6cddcf817184affe7c9</id>
<content type='text'>
The empty_zero_page[] export is required for ZERO_PAGE() module references.
The #includes are due to changes in implicit inclusion, and should of
course have been in the sources from the beginning.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://github.com/cmetcalf-tilera/linux-tile</title>
<updated>2011-11-04T19:33:34Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-11-04T19:33:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1583171492eb514e267c7b51e96846b38de0f544'/>
<id>urn:sha1:1583171492eb514e267c7b51e96846b38de0f544</id>
<content type='text'>
* 'for-linus' of git://github.com/cmetcalf-tilera/linux-tile:
  arch/tile: factor out &lt;arch/opcode.h&gt; header
  arch/tile: add the &lt;arch&gt; headers to the set of installed kernel headers
  arch/tile: avoid exporting a symbol no longer used by gcc
  arch/tile: avoid ISO namespace pollution with &lt;asm/sigcontext.h&gt;
</content>
</entry>
<entry>
<title>arch/tile: factor out &lt;arch/opcode.h&gt; header</title>
<updated>2011-11-03T20:58:54Z</updated>
<author>
<name>Chris Metcalf</name>
<email>cmetcalf@tilera.com</email>
</author>
<published>2011-11-03T03:02:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=eb7c792da5afa3b9ec3e802c30952f82d2e9722b'/>
<id>urn:sha1:eb7c792da5afa3b9ec3e802c30952f82d2e9722b</id>
<content type='text'>
The kernel code was using some &lt;asm&gt; headers that included a mix
of hardware-specific information (typically found in Tilera &lt;arch&gt;
headers) and structures, enums, and function declarations supporting
the disassembly function of the tile-desc.c sources.

This change refactors that code so that a hardware-specific, but
OS- and application-agnostic header, is created: &lt;arch/opcode.h&gt;.
This header is then exported to userspace along with the other
&lt;arch&gt; headers and can be used to build userspace code; in particular,
it is used by glibc as part of implementing the backtrace() function.

The new header, together with a header that specifically describes
the disassembly code (&lt;asm/tile-desc.h&gt; with _32 and _64 variants),
replaces the old &lt;asm/opcode-tile*.h&gt; and &lt;asm/opcode_constants*.h&gt;
headers.

As part of this change, we are also renaming the 32-bit constants
from TILE_xxx to TILEPRO_xxx to better reflect the fact that they
are specific to the TILEPro architecture, and not to TILE-Gx
and any successor "tile" architecture chips.

Signed-off-by: Chris Metcalf &lt;cmetcalf@tilera.com&gt;
</content>
</entry>
</feed>
