John David Anglin ddc1d49e10 parisc: Correct completer in lws start
commit 8f66fce0f46560b9e910787ff7ad0974441c4f9c upstream.

The completer in the "or,ev %r1,%r30,%r30" instruction is reversed, so we are
not clipping the LWS number when we are called from a 32-bit process (W=0).
We need to nulify the following depdi instruction when the least-significant
bit of %r30 is 1.

If the %r20 register is not clipped, a user process could perform a LWS call
that would branch to an undefined location in the kernel and potentially crash
the machine.

Signed-off-by: John David Anglin <dave.anglin@bell.net>
Cc: stable@vger.kernel.org # 4.19+
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-29 12:23:36 +01:00
..
2019-05-10 21:00:44 +02:00
2019-09-08 15:19:58 +02:00
2019-08-03 08:56:57 +02:00
2019-05-10 21:00:44 +02:00
2019-05-03 23:47:38 +02:00
2019-06-08 12:56:29 +02:00
2019-06-08 12:56:26 +02:00
2020-01-14 20:08:34 +01:00
2017-11-17 15:27:22 +01:00