<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/arch/parisc/lib, branch v6.6.132</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.132</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.132'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2025-10-19T14:30:51+00:00</updated>
<entry>
<title>parisc: Remove spurious if statement from raw_copy_from_user()</title>
<updated>2025-10-19T14:30:51+00:00</updated>
<author>
<name>John David Anglin</name>
<email>dave.anglin@bell.net</email>
</author>
<published>2025-08-05T15:35:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=62fcb12c1f80766b5888853fd6386196c71237cf'/>
<id>urn:sha1:62fcb12c1f80766b5888853fd6386196c71237cf</id>
<content type='text'>
commit 16794e524d310780163fdd49d0bf7fac30f8dbc8 upstream.

Accidently introduced in commit 91428ca9320e.

Signed-off-by: John David Anglin &lt;dave.anglin@bell.net&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Fixes: 91428ca9320e ("parisc: Check region is readable by user in raw_copy_from_user()")
Cc: stable@vger.kernel.org # v5.12+
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>parisc: Check region is readable by user in raw_copy_from_user()</title>
<updated>2025-08-28T14:28:37+00:00</updated>
<author>
<name>John David Anglin</name>
<email>dave.anglin@bell.net</email>
</author>
<published>2025-07-21T19:39:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b334724f6b315f8bc78471520df6f92d2e8b8328'/>
<id>urn:sha1:b334724f6b315f8bc78471520df6f92d2e8b8328</id>
<content type='text'>
commit 91428ca9320edbab1211851d82429d33b9cd73ef upstream.

Because of the way the _PAGE_READ is handled in the parisc PTE, an
access interruption is not generated when the kernel reads from a
region where the _PAGE_READ is zero. The current code was written
assuming read access faults would also occur in the kernel.

This change adds user access checks to raw_copy_from_user().  The
prober_user() define checks whether user code has read access to
a virtual address. Note that page faults are not handled in the
exception support for the probe instruction. For this reason, we
precede the probe by a ldb access check.

Signed-off-by: John David Anglin &lt;dave.anglin@bell.net&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Cc: stable@vger.kernel.org # v5.12+
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>parisc: ucmpdi2: Fix no previous prototype for '__ucmpdi2' warning</title>
<updated>2023-08-10T16:34:05+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2023-08-10T16:31:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=438e9230d60ed8771db5770c3c795f3272ef7aae'/>
<id>urn:sha1:438e9230d60ed8771db5770c3c795f3272ef7aae</id>
<content type='text'>
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
<entry>
<title>parisc: Drop homebrewn io[read|write]64_[lo_hi|hi_lo]</title>
<updated>2022-09-23T19:52:27+00:00</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2022-09-22T19:18:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=28a679ea60d0d16c3556f687bb2040559e92e932'/>
<id>urn:sha1:28a679ea60d0d16c3556f687bb2040559e92e932</id>
<content type='text'>
The parisc implements ioread64_lo_hi(), ioread64_hi_lo()
iowrite64_lo_hi() and iowrite64_hi_lo() while we already
have a perfectly working generic version in the generic
portable assembly in &lt;linux/io-64-nonatomic-hi-lo.h&gt;.

Drop the custom versions in favor for the defaults.

Fixes: 77bfc8bdb5a1 ("parisc: Remove 64bit access on 32bit machines")
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
Acked-by: Helge Deller &lt;deller@gmx.de&gt;
Reported-by: Helge Deller &lt;deller@gmx.de&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>parisc: Remove 64bit access on 32bit machines</title>
<updated>2022-09-10T07:55:55+00:00</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2022-09-03T22:45:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=77bfc8bdb5a1cdbcea21daccdf1686e1bfea3db6'/>
<id>urn:sha1:77bfc8bdb5a1cdbcea21daccdf1686e1bfea3db6</id>
<content type='text'>
The parisc was using some readq/writeq accessors without special
considerations as to what will happen on 32bit CPUs if you do
this. Maybe we have been lucky that it "just worked" on 32bit
due to the compiler behaviour, or the code paths were never
executed.

Fix the two offending code sites like this:

arch/parisc/lib/iomap.c:

- Put ifdefs around the 64bit accessors and make sure
  that ioread64, ioread64be, iowrite64 and iowrite64be
  are not available on 32bit builds.

- Also fold in a bug fix where 64bit access was by
  mistake using 32bit writel() accessors rather
  than 64bit writeq().

drivers/parisc/sba_iommu.c:

- Access any 64bit registers using _lo_hi-semantics by way
  of the readq and writeq operations provided by
  &lt;linux/io-64-nonatomic-lo-hi.h&gt;

Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: James E.J. Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
Cc: Helge Deller &lt;deller@gmx.de&gt;
Cc: linux-parisc@vger.kernel.org
Cc: linux-arch@vger.kernel.org
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: John David Anglin &lt;dave.anglin@bell.net&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>parisc: Use constants to encode the space registers like SR_KERNEL</title>
<updated>2022-03-11T18:49:31+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2022-02-17T14:26:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=360bd6c658076f9264760364fe95e6e78cbd188a'/>
<id>urn:sha1:360bd6c658076f9264760364fe95e6e78cbd188a</id>
<content type='text'>
Use the provided space register constants instead of hardcoded values.

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
<entry>
<title>parisc: Add ioread64_lo_hi() and iowrite64_lo_hi()</title>
<updated>2022-02-07T15:33:31+00:00</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2022-02-07T15:16:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=18a1d5e1945385d9b5adc3fe11427ce4a9d2826e'/>
<id>urn:sha1:18a1d5e1945385d9b5adc3fe11427ce4a9d2826e</id>
<content type='text'>
It's a followup to the previous commit f15309d7ad5d ("parisc: Add
ioread64_hi_lo() and iowrite64_hi_lo()") which does only half of
the job. Add the rest, so we won't get a new kernel test robot
reports.

Fixes: f15309d7ad5d ("parisc: Add ioread64_hi_lo() and iowrite64_hi_lo()")
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
<entry>
<title>parisc: mark xchg functions notrace</title>
<updated>2021-11-01T06:36:00+00:00</updated>
<author>
<name>Sven Schnelle</name>
<email>svens@stackframe.org</email>
</author>
<published>2021-10-19T18:31:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ecb6a16fb60ea4a6cafa9e9da81b4c80b963af77'/>
<id>urn:sha1:ecb6a16fb60ea4a6cafa9e9da81b4c80b963af77</id>
<content type='text'>
tracing the xchg functions leads to recursion in various
places. Therefore mark the function as notrace.

Signed-off-by: Sven Schnelle &lt;svens@stackframe.org&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
</entry>
<entry>
<title>parisc: Declare pci_iounmap() parisc version only when CONFIG_PCI enabled</title>
<updated>2021-09-19T17:36:09+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2021-09-19T17:36:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9caea0007601d3bc6debec04f8b4cd6f4c2394be'/>
<id>urn:sha1:9caea0007601d3bc6debec04f8b4cd6f4c2394be</id>
<content type='text'>
Linus noticed odd declaration rules for pci_iounmap() in iomap.h and
pci_iomap.h, where it dependend on either NO_GENERIC_PCI_IOPORT_MAP or
GENERIC_IOMAP when CONFIG_PCI was disabled.

Testing on parisc seems to indicate that we need pci_iounmap() only when
CONFIG_PCI is enabled, so the declaration of pci_iounmap() can be moved
cleanly into pci_iomap.h in sync with the declarations of pci_iomap().

Link: https://lore.kernel.org/all/CAHk-=wjRrh98pZoQ+AzfWmsTZacWxTJKXZ9eKU2X_0+jM=O8nw@mail.gmail.com/
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Suggested-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Fixes: 97a29d59fc22 ("[PARISC] fix compile break caused by iomap: make IOPORT/PCI mapping functions conditional")
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: Guenter Roeck &lt;linux@roeck-us.net&gt;
Cc: Ulrich Teichert &lt;krypton@ulrich-teichert.org&gt;
Cc: James Bottomley &lt;James.Bottomley@hansenpartnership.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>parisc: Implement __get/put_kernel_nofault()</title>
<updated>2021-09-09T20:53:09+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2021-09-09T10:47:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=671028728083e856e9919221b109e3b2cd2ccc49'/>
<id>urn:sha1:671028728083e856e9919221b109e3b2cd2ccc49</id>
<content type='text'>
Remove CONFIG_SET_FS from parisc, so we need to add
__get_kernel_nofault() and __put_kernel_nofault(), define
HAVE_GET_KERNEL_NOFAULT and remove set_fs(), get_fs(), load_sr2(),
thread_info-&gt;addr_limit, KERNEL_DS and USER_DS.

The nice side-effect of this patch is that we now can directly access
userspace via sr3 without the need to use a temporary sr2 which is
either copied from sr3 or set to zero (for kernel space).

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Suggested-by: Arnd Bergmann &lt;arnd@kernel.org&gt;
</content>
</entry>
</feed>
