<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/arch/sparc64/kernel/entry.S, branch master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/arch/sparc64/kernel/entry.S?h=master</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/arch/sparc64/kernel/entry.S?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2008-04-28T07:47:20Z</updated>
<entry>
<title>sparc64: Split entry.S up into seperate files.</title>
<updated>2008-04-28T07:47:20Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-04-28T07:47:20Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=6eda3a75928a3dc1072dfffd228ab818869d83ad'/>
<id>urn:sha1:6eda3a75928a3dc1072dfffd228ab818869d83ad</id>
<content type='text'>
entry.S was a hodge-podge of several totally unrelated
sets of assembler routines, ranging from FPU trap handlers
to hypervisor call functions.

Split it up into topic-sized pieces.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC64]: %l6 trap return handling no longer necessary.</title>
<updated>2008-04-24T10:15:22Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-04-24T10:15:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=7697daaa894ca2bc5cd652269c316bcdc3ec441b'/>
<id>urn:sha1:7697daaa894ca2bc5cd652269c316bcdc3ec441b</id>
<content type='text'>
Now that we indicate the "restart system call" in the
trap type field of pt_regs-&gt;magic, we don't need to
set the %l6 boolean in all of the trap return paths.

And we therefore don't need to pass it to do_notify_resume().

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>sparc64: cleanup after SunOS/Solaris binary emulation removal</title>
<updated>2008-04-24T06:32:19Z</updated>
<author>
<name>Adrian Bunk</name>
<email>bunk@kernel.org</email>
</author>
<published>2008-04-24T02:15:59Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=c6ca978370c57422cdcf814af1da96cfc7c24811'/>
<id>urn:sha1:c6ca978370c57422cdcf814af1da96cfc7c24811</id>
<content type='text'>
The following cleanups are now possible:
- arch/sparc64/kernel/entry.S:ret_sys_call no longer has to be global
- arch/sparc64/kernel/sparc64_ksyms.c:
  remove no longer used prototypes

Signed-off-by: Adrian Bunk &lt;bunk@kernel.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC]: Remove SunOS and Solaris binary support.</title>
<updated>2008-04-21T22:10:15Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-04-20T09:14:23Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ec98c6b9b47df6df1c1fa6cf3d427414f8c2cf16'/>
<id>urn:sha1:ec98c6b9b47df6df1c1fa6cf3d427414f8c2cf16</id>
<content type='text'>
As per Documentation/feature-removal-schedule.txt

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC64]: Make save_stack_trace() more efficient.</title>
<updated>2008-03-25T03:06:24Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-03-25T03:06:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=85a793533524f333e8d630dc22450e574b7e08d2'/>
<id>urn:sha1:85a793533524f333e8d630dc22450e574b7e08d2</id>
<content type='text'>
Doing a 'flushw' every stack trace capture creates so much overhead
that it makes lockdep next to unusable.

We only care about the frame pointer chain and the function caller
program counters, so flush those by hand to the stack frame.

This is significantly more efficient than a 'flushw' because:

1) We only save 16 bytes per active register window to the stack.

2) This doesn't push the entire register window context of the current
   call chain out of the cpu, forcing register window fill traps as we
   return back down.

Note that we can't use 'restore' and 'save' instructions to move
around the register windows because that wouldn't work on Niagara
processors.  They optimize 'save' into a new register window by
simply clearing out the registers instead of pulling them in from
the on-chip register window backing store.

Based upon a report by Tom Callaway.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC]: Move over to arch_ptrace().</title>
<updated>2008-02-07T11:00:17Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-02-07T11:00:17Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=9775369ec06bad8edb2fbd8c77316f49b439c225'/>
<id>urn:sha1:9775369ec06bad8edb2fbd8c77316f49b439c225</id>
<content type='text'>
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC64]: Fix two kernel linear mapping setup bugs.</title>
<updated>2007-12-13T14:13:38Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@sunset.davemloft.net</email>
</author>
<published>2007-12-13T14:13:38Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8f361453d8e9a67c85b2cf9b93c642c2d8fe0462'/>
<id>urn:sha1:8f361453d8e9a67c85b2cf9b93c642c2d8fe0462</id>
<content type='text'>
This was caught and identified by Greg Onufer.

Since we setup the 256M/4M bitmap table after taking over the trap
table, it's possible for some 4M mapping to get loaded in the TLB
beforhand which later will be 256M mappings.

This can cause illegal TLB multiple-match conditions.  Fix this by
setting up the bitmap before we take over the trap table.

Next, __flush_tlb_all() was not doing anything on hypervisor
platforms.  Fix by adding sun4v_mmu_demap_all() and calling it.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC64]: Access ivector_table[] using physical addresses.</title>
<updated>2007-10-14T04:53:15Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@sunset.davemloft.net</email>
</author>
<published>2007-10-14T04:42:46Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=eb2d8d60327bec172ec80efbda94d0c492088204'/>
<id>urn:sha1:eb2d8d60327bec172ec80efbda94d0c492088204</id>
<content type='text'>
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC64]: Make IVEC pointers 64-bit.</title>
<updated>2007-10-14T04:53:15Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@sunset.davemloft.net</email>
</author>
<published>2007-10-12T09:59:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=a650d3839e7a68321e5b76264398a63019b0928b'/>
<id>urn:sha1:a650d3839e7a68321e5b76264398a63019b0928b</id>
<content type='text'>
Currently we chain IVEC entries using 32-bit "pointers"
because we know that the ivector_table is in the main
kernel image, thus below 4GB.

This uses proper 64-bit pointers instead.

Whilst this bloats up the kernel image size, this sets
the infrastructure necessary to significantly shrink the
kernel size by using physical addresses and dynamically
allocating the ivector table.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SPARC64]: Fix args to sun4v_ldc_revoke().</title>
<updated>2007-06-13T07:01:27Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@sunset.davemloft.net</email>
</author>
<published>2007-06-13T06:56:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=fc395f8d589f4f0b3fcdd9b8bb84b7cacf711a4f'/>
<id>urn:sha1:fc395f8d589f4f0b3fcdd9b8bb84b7cacf711a4f</id>
<content type='text'>
First argument is LDC channel ID, then mapping cookie,
then the MTE revoke cookie.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
