linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/9] ARM: spectre-v1.1 mitigations
@ 2018-09-06 16:37 Julien Thierry
  2018-09-06 16:38 ` [PATCH v2 1/9] ARM: signal: copy registers using __copy_to_user() Julien Thierry
                   ` (8 more replies)
  0 siblings, 9 replies; 17+ messages in thread
From: Julien Thierry @ 2018-09-06 16:37 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

The series provides mitigations for spectre-v1.1. It is mostly mirroring
what Russell did [1], but this time for writes to user provided addresses.

* Patches 1-5 replace some __put_user_error calls with __copy_to_user, this
  both reduces the number of time address sanitizing is performed and also
  the number of time PAN needs to be toggled.

* Patches 6-9 ensure user addresses used by __put_user* and
  __copy_to_user functions are sanitized before being used.


Changes since v1[2]:
- Fixed off-by-one error in uaccess_mask_range_ptr, spotted by Russell
- Remove remaining calls to __put_user_error() and get rid of the macro
- Reorder the patches to better reflect the spectre-v1 series

[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2018-July/589869.html
[2] https://www.spinics.net/lists/arm-kernel/msg671026.html

Cheers,

Julien

-->

Julien Thierry (9):
  ARM: signal: copy registers using __copy_to_user()
  ARM: signal: always use __copy_to_user to save iwmmxt context
  ARM: vfp: use __copy_to_user() when saving VFP state
  ARM: oabi-compat: copy oabi events using __copy_to_user()
  ARM: signal: replace __put_user_error with __put_user
  ARM: uaccess: Prevent speculative use of the current addr_limit
  ARM: spectre-v1.1: use put_user() for __put_user()
  ARM: spectre-v1,v1.1: provide helpers for address sanitization
  ARM: spectre-v1.1: harden __copy_to_user

 arch/arm/include/asm/assembler.h   | 11 ++++++
 arch/arm/include/asm/thread_info.h |  4 +-
 arch/arm/include/asm/uaccess.h     | 49 ++++++++++++++++++++---
 arch/arm/kernel/signal.c           | 79 +++++++++++++++++++++-----------------
 arch/arm/kernel/sys_oabi-compat.c  | 10 ++---
 arch/arm/lib/copy_from_user.S      |  6 +--
 arch/arm/lib/copy_to_user.S        |  6 ++-
 arch/arm/lib/uaccess_with_memcpy.c |  3 +-
 arch/arm/vfp/vfpmodule.c           | 20 ++++------
 9 files changed, 119 insertions(+), 69 deletions(-)

--
1.9.1

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-09-10 10:30 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-06 16:37 [PATCH v2 0/9] ARM: spectre-v1.1 mitigations Julien Thierry
2018-09-06 16:38 ` [PATCH v2 1/9] ARM: signal: copy registers using __copy_to_user() Julien Thierry
2018-09-06 16:50   ` Russell King - ARM Linux
2018-09-10  8:00     ` Julien Thierry
2018-09-10 10:30       ` Julien Thierry
2018-09-06 16:38 ` [PATCH v2 2/9] ARM: signal: always use __copy_to_user to save iwmmxt context Julien Thierry
2018-09-06 16:53   ` Russell King - ARM Linux
2018-09-06 16:38 ` [PATCH v2 3/9] ARM: vfp: use __copy_to_user() when saving VFP state Julien Thierry
2018-09-06 16:57   ` Russell King - ARM Linux
2018-09-06 16:38 ` [PATCH v2 4/9] ARM: oabi-compat: copy oabi events using __copy_to_user() Julien Thierry
2018-09-06 17:04   ` Russell King - ARM Linux
2018-09-10  8:04     ` Julien Thierry
2018-09-06 16:38 ` [PATCH v2 5/9] ARM: signal: replace __put_user_error with __put_user Julien Thierry
2018-09-06 16:38 ` [PATCH v2 6/9] ARM: uaccess: Prevent speculative use of the current addr_limit Julien Thierry
2018-09-06 16:38 ` [PATCH v2 7/9] ARM: spectre-v1.1: use put_user() for __put_user() Julien Thierry
2018-09-06 16:38 ` [PATCH v2 8/9] ARM: spectre-v1, v1.1: provide helpers for address sanitization Julien Thierry
2018-09-06 16:38 ` [PATCH v2 9/9] ARM: spectre-v1.1: harden __copy_to_user Julien Thierry

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).