<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/next/linux-next.git/arch/parisc/lib/fixup.S, branch master</title>
<subtitle>The linux-next integration testing tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/'/>
<updated>2017-03-29T19:50:36+00:00</updated>
<entry>
<title>parisc: Clean up fixup routines for get_user()/put_user()</title>
<updated>2017-03-29T19:50:36+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2017-03-25T10:59:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=d19f5e41b344a057bb2450024a807476f30978d2'/>
<id>urn:sha1:d19f5e41b344a057bb2450024a807476f30978d2</id>
<content type='text'>
Al Viro noticed that userspace accesses via get_user()/put_user() can be
simplified a lot with regard to usage of the exception handling.

This patch implements a fixup routine for get_user() and put_user() in such
that the exception handler will automatically load -EFAULT into the register
%r8 (the error value) in case on a fault on userspace.  Additionally the fixup
routine will zero the target register on fault in case of a get_user() call.
The target register is extracted out of the faulting assembly instruction.

This patch brings a few benefits over the old implementation:
1. Exception handling gets much cleaner, easier and smaller in size.
2. Helper functions like fixup_get_user_skip_1 (all of fixup.S) can be dropped.
3. No need to hardcode %r9 as target register for get_user() any longer. This
   helps the compiler register allocator and thus creates less assembler
   statements.
4. No dependency on the exception_data contents any longer.
5. Nested faults will be handled cleanly.

Reported-by: Al Viro &lt;viro@ZenIV.linux.org.uk&gt;
Cc: &lt;stable@vger.kernel.org&gt; # v4.9+
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
<entry>
<title>parisc: Add cfi_startproc and cfi_endproc to assembly code</title>
<updated>2016-10-05T20:54:40+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2016-10-05T20:28:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=f39cce654f9a1df331d7e1ba703f5f06a79f2159'/>
<id>urn:sha1:f39cce654f9a1df331d7e1ba703f5f06a79f2159</id>
<content type='text'>
Add ENTRY_CFI() and ENDPROC_CFI() macros for dwarf debug info and
convert assembly users to new macros.

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
<entry>
<title>parisc: Unbreak handling exceptions from kernel modules</title>
<updated>2016-04-08T20:14:14+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2016-04-08T16:32:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=2ef4dfd9d9f288943e249b78365a69e3ea3ec072'/>
<id>urn:sha1:2ef4dfd9d9f288943e249b78365a69e3ea3ec072</id>
<content type='text'>
Handling exceptions from modules never worked on parisc.
It was just masked by the fact that exceptions from modules
don't happen during normal use.

When a module triggers an exception in get_user() we need to load the
main kernel dp value before accessing the exception_data structure, and
afterwards restore the original dp value of the module on exit.

Noticed-by: Mikulas Patocka &lt;mpatocka@redhat.com&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Cc: stable@vger.kernel.org
</content>
</entry>
<entry>
<title>parisc: percpu: update comments referring to __get_cpu_var</title>
<updated>2014-12-13T20:42:53+00:00</updated>
<author>
<name>Christoph Lameter</name>
<email>cl@linux.com</email>
</author>
<published>2014-12-13T00:58:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6ddb798f0248e3460c2dce76af5cb30a980efccd'/>
<id>urn:sha1:6ddb798f0248e3460c2dce76af5cb30a980efccd</id>
<content type='text'>
__get_cpu_var was removed. Update comments to refer to
this_cpu_ptr() instead.

Signed-off-by: Christoph Lameter &lt;cl@linux.com&gt;
Cc: "James E.J. Bottomley" &lt;James.Bottomley@HansenPartnership.com&gt;
Cc: Tejun Heo &lt;tj@kernel.org&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>
<entry>
<title>percpu: remove per_cpu__ prefix.</title>
<updated>2009-10-29T13:34:15+00:00</updated>
<author>
<name>Rusty Russell</name>
<email>rusty@rustcorp.com.au</email>
</author>
<published>2009-10-29T13:34:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=dd17c8f72993f9461e9c19250e3f155d6d99df22'/>
<id>urn:sha1:dd17c8f72993f9461e9c19250e3f155d6d99df22</id>
<content type='text'>
Now that the return from alloc_percpu is compatible with the address
of per-cpu vars, it makes sense to hand around the address of per-cpu
variables.  To make this sane, we remove the per_cpu__ prefix we used
created to stop people accidentally using these vars directly.

Now we have sparse, we can use that (next patch).

tj: * Updated to convert stuff which were missed by or added after the
      original patch.

    * Kill per_cpu_var() macro.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Reviewed-by: Christoph Lameter &lt;cl@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Revert "parisc: fix trivial section name warnings"</title>
<updated>2008-06-13T14:49:45+00:00</updated>
<author>
<name>Kyle McMartin</name>
<email>kyle@minerva.i.cabal.ca</email>
</author>
<published>2008-05-22T18:36:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=dfcf753bd3fb09f336659d07b1c48db7e62772e0'/>
<id>urn:sha1:dfcf753bd3fb09f336659d07b1c48db7e62772e0</id>
<content type='text'>
This reverts commit bd3bb8c15b9a80dbddfb7905b237a4a11a4725b4.

Signed-off-by: Kyle McMartin &lt;kyle@mcmartin.ca&gt;
</content>
</entry>
<entry>
<title>parisc: fix trivial section name warnings</title>
<updated>2008-05-15T14:38:54+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2008-05-02T20:02:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=bd3bb8c15b9a80dbddfb7905b237a4a11a4725b4'/>
<id>urn:sha1:bd3bb8c15b9a80dbddfb7905b237a4a11a4725b4</id>
<content type='text'>
This trivial patch fixes the following section warnings on PARISC:
&gt; WARNING: vmlinux.o (.text.1): unexpected section name.
&gt;The (.[number]+) following section name are ld generated and not expected.
&gt; Did you forget to use "ax"/"aw" in a .S file?
&gt; Note that for example &lt;linux/init.h&gt; contains
&gt; section definitions for use in .S files.

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Signed-off-by: Kyle McMartin &lt;kyle@mcmartin.ca&gt;
</content>
</entry>
<entry>
<title>[PARISC] add ASM_EXCEPTIONTABLE_ENTRY() macro</title>
<updated>2007-02-17T06:16:26+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2007-01-28T13:52:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=0b3d643f9ead9b5141dedbb2d1b06ce15469fc4a'/>
<id>urn:sha1:0b3d643f9ead9b5141dedbb2d1b06ce15469fc4a</id>
<content type='text'>
- this macro unifies the code to add exception table entries
- additionally use ENTRY()/ENDPROC() at more places

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
<entry>
<title>Remove obsolete #include &lt;linux/config.h&gt;</title>
<updated>2006-06-30T17:25:36+00:00</updated>
<author>
<name>Jörn Engel</name>
<email>joern@wohnheim.fh-wedel.de</email>
</author>
<published>2006-06-30T17:25:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6ab3d5624e172c553004ecc862bfeac16d9d68b7'/>
<id>urn:sha1:6ab3d5624e172c553004ecc862bfeac16d9d68b7</id>
<content type='text'>
Signed-off-by: Jörn Engel &lt;joern@wohnheim.fh-wedel.de&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
</content>
</entry>
<entry>
<title>[PARISC] Specify level to fix binutils level promotion bug</title>
<updated>2005-10-22T02:56:35+00:00</updated>
<author>
<name>Grant Grundler</name>
<email>grundler@parisc-linux.org</email>
</author>
<published>2005-10-22T02:56:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=61520e1f8f5ec3a78510a3254947324711944b98'/>
<id>urn:sha1:61520e1f8f5ec3a78510a3254947324711944b98</id>
<content type='text'>
fixup.S needs to specify .level and use correct LDREG macro.
New binutils has a bug where it doesn't "promote" from PA1.0 to PA1.1
correctly when using ",s" completer.

remove use of __LP64__ in assembly.h and add some white space.

Signed-off-by: Grant Grundler &lt;grundler@parisc-linux.org&gt;

Signed-off-by: Kyle McMartin &lt;kyle@parisc-linux.org&gt;
</content>
</entry>
</feed>
