[RFC PATCH 0/3] sched and membarrier probe_kernel_address fixes

From: Mathieu Desnoyers
Date: Tue Sep 03 2019 - 12:00:46 EST


There is an ongoing discussion [1] about the need to fix use of
probe_kernel_address in task_rcu_deference (or provide additional
existence guarantees), and add missing READ_ONCE and
probe_kernel_address when reading other cpu runqueue's
mm->membarrier_state.

This patch set simply adds the missing probe_kernel_address checks
and use, aiming to be easily backported to stable kernels. Changing
the existence guarantees of sighand and mm objects is expected to
deprecate those changes for future kernels, but it's unclear whether
those more intrusive changes will be acceptable for stable kernel
branches.

Thanks,

Mathieu

[1] https://lore.kernel.org/r/20190902162036.GS2369@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Mathieu Desnoyers (3):
Fix: sched: task_rcu_dereference: check probe_kernel_address return
value
Fix: sched/membarrier: READ_ONCE p->mm in membarrier_global_expedited
Fix: sched/membarrier: use probe_kernel_address to read
mm->membarrier_state

kernel/exit.c | 3 ++-
kernel/sched/membarrier.c | 27 +++++++++++++++++++++++++--
2 files changed, 27 insertions(+), 3 deletions(-)

--
2.17.1