Go to file
Peter Zijlstra d48e385003 locking/lockdep: Remove more raw_cpu_read() usage
I initially thought raw_cpu_read() was OK, since if it is  we have
IRQs disabled and can't get migrated, so if we get migrated both CPUs
must have 0 and it doesn't matter which 0 we read.

And while that is true; it isn't the whole store, on pretty much all
architectures (except x86) this can result in computing the address for
one CPU, getting migrated, the old CPU continuing execution with another
task (possibly setting recursion) and then the new CPU reading the value
of the old CPU, which is no longer 0.

Similer to:

  baffd723e4 ("lockdep: Revert "lockdep: Use raw_cpu_*() for per-cpu variables"")

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20201026152256.GB2651@hirez.programming.kicks-ass.net
2020-10-30 17:07:18 +01:00
Documentation EFI changes for v5.10: 2020-10-12 13:26:49 -07:00
LICENSES
arch A single commit harmonizing the x86 and ARM64 Hyper-V constants namespace. 2020-10-12 15:30:32 -07:00
block
certs
crypto
drivers This tree introduces static_call(), which is the idea of static_branch() 2020-10-12 13:58:15 -07:00
fs EFI changes for v5.10: 2020-10-12 13:26:49 -07:00
include locking/seqlocks: Fix kernel-doc warnings 2020-10-14 18:07:50 +02:00
init
ipc
kernel locking/lockdep: Remove more raw_cpu_read() usage 2020-10-30 17:07:18 +01:00
lib These are the locking updates for v5.10: 2020-10-12 13:06:20 -07:00
mm These are the locking updates for v5.10: 2020-10-12 13:06:20 -07:00
net
samples
scripts
security EFI changes for v5.10: 2020-10-12 13:26:49 -07:00
sound
tools This tree introduces static_call(), which is the idea of static_branch() 2020-10-12 13:58:15 -07:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS Scheduler changes for v5.10: 2020-10-12 12:56:01 -07:00
Makefile
README

README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.