Commit 3e83dfd5 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge branch 'x86/mm' into x86/platform, to pick up TLB flush dependency



Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents 3308376a 9e52fc2b
Loading
Loading
Loading
Loading
+13 −0
Original line number Original line Diff line number Diff line
@@ -2233,6 +2233,17 @@
			memory contents and reserves bad memory
			memory contents and reserves bad memory
			regions that are detected.
			regions that are detected.


	mem_encrypt=	[X86-64] AMD Secure Memory Encryption (SME) control
			Valid arguments: on, off
			Default (depends on kernel configuration option):
			  on  (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=y)
			  off (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=n)
			mem_encrypt=on:		Activate SME
			mem_encrypt=off:	Do not activate SME

			Refer to Documentation/x86/amd-memory-encryption.txt
			for details on when memory encryption can be activated.

	mem_sleep_default=	[SUSPEND] Default system suspend mode:
	mem_sleep_default=	[SUSPEND] Default system suspend mode:
			s2idle  - Suspend-To-Idle
			s2idle  - Suspend-To-Idle
			shallow - Power-On Suspend or equivalent (if supported)
			shallow - Power-On Suspend or equivalent (if supported)
@@ -2696,6 +2707,8 @@
	nopat		[X86] Disable PAT (page attribute table extension of
	nopat		[X86] Disable PAT (page attribute table extension of
			pagetables) support.
			pagetables) support.


	nopcid		[X86-64] Disable the PCID cpu feature.

	norandmaps	Don't use address space randomization.  Equivalent to
	norandmaps	Don't use address space randomization.  Equivalent to
			echo 0 > /proc/sys/kernel/randomize_va_space
			echo 0 > /proc/sys/kernel/randomize_va_space


+6 −0
Original line number Original line Diff line number Diff line
@@ -27,5 +27,11 @@ You have to add the following kernel parameters in your elilo.conf:
	Macbook Pro 17", iMac 20" :
	Macbook Pro 17", iMac 20" :
		video=efifb:i20
		video=efifb:i20


Accepted options:

nowc	Don't map the framebuffer write combined. This can be used
	to workaround side-effects and slowdowns on other CPU cores
	when large amounts of console data are written.

--
--
Edgar Hucek <gimli@dark-green.com>
Edgar Hucek <gimli@dark-green.com>
+2 −2
Original line number Original line Diff line number Diff line
@@ -228,7 +228,7 @@ Learning on the device port should be enabled, as well as learning_sync:
	bridge link set dev DEV learning on self
	bridge link set dev DEV learning on self
	bridge link set dev DEV learning_sync on self
	bridge link set dev DEV learning_sync on self


Learning_sync attribute enables syncing of the learned/forgotton FDB entry to
Learning_sync attribute enables syncing of the learned/forgotten FDB entry to
the bridge's FDB.  It's possible, but not optimal, to enable learning on the
the bridge's FDB.  It's possible, but not optimal, to enable learning on the
device port and on the bridge port, and disable learning_sync.
device port and on the bridge port, and disable learning_sync.


@@ -245,7 +245,7 @@ the responsibility of the port driver/device to age out these entries. If the
port device supports ageing, when the FDB entry expires, it will notify the
port device supports ageing, when the FDB entry expires, it will notify the
driver which in turn will notify the bridge with SWITCHDEV_FDB_DEL.  If the
driver which in turn will notify the bridge with SWITCHDEV_FDB_DEL.  If the
device does not support ageing, the driver can simulate ageing using a
device does not support ageing, the driver can simulate ageing using a
garbage collection timer to monitor FBD entries.  Expired entries will be
garbage collection timer to monitor FDB entries.  Expired entries will be
notified to the bridge using SWITCHDEV_FDB_DEL.  See rocker driver for
notified to the bridge using SWITCHDEV_FDB_DEL.  See rocker driver for
example of driver running ageing timer.
example of driver running ageing timer.


+11 −8
Original line number Original line Diff line number Diff line
@@ -58,20 +58,23 @@ Symbols/Function Pointers
	%ps	versatile_init
	%ps	versatile_init
	%pB	prev_fn_of_versatile_init+0x88/0x88
	%pB	prev_fn_of_versatile_init+0x88/0x88


For printing symbols and function pointers. The ``S`` and ``s`` specifiers
The ``F`` and ``f`` specifiers are for printing function pointers,
result in the symbol name with (``S``) or without (``s``) offsets. Where
for example, f->func, &gettimeofday. They have the same result as
this is used on a kernel without KALLSYMS - the symbol address is
``S`` and ``s`` specifiers. But they do an extra conversion on
printed instead.
ia64, ppc64 and parisc64 architectures where the function pointers
are actually function descriptors.

The ``S`` and ``s`` specifiers can be used for printing symbols
from direct addresses, for example, __builtin_return_address(0),
(void *)regs->ip. They result in the symbol name with (``S``) or
without (``s``) offsets. If KALLSYMS are disabled then the symbol
address is printed instead.


The ``B`` specifier results in the symbol name with offsets and should be
The ``B`` specifier results in the symbol name with offsets and should be
used when printing stack backtraces. The specifier takes into
used when printing stack backtraces. The specifier takes into
consideration the effect of compiler optimisations which may occur
consideration the effect of compiler optimisations which may occur
when tail-call``s are used and marked with the noreturn GCC attribute.
when tail-call``s are used and marked with the noreturn GCC attribute.


On ia64, ppc64 and parisc64 architectures function pointers are
actually function descriptors which must first be resolved. The ``F`` and
``f`` specifiers perform this resolution and then provide the same
functionality as the ``S`` and ``s`` specifiers.


Kernel Pointers
Kernel Pointers
===============
===============
+36 −11
Original line number Original line Diff line number Diff line
@@ -35,9 +35,34 @@ Table : Subdirectories in /proc/sys/net
bpf_jit_enable
bpf_jit_enable
--------------
--------------


This enables Berkeley Packet Filter Just in Time compiler.
This enables the BPF Just in Time (JIT) compiler. BPF is a flexible
Currently supported on x86_64 architecture, bpf_jit provides a framework
and efficient infrastructure allowing to execute bytecode at various
to speed packet filtering, the one used by tcpdump/libpcap for example.
hook points. It is used in a number of Linux kernel subsystems such
as networking (e.g. XDP, tc), tracing (e.g. kprobes, uprobes, tracepoints)
and security (e.g. seccomp). LLVM has a BPF back end that can compile
restricted C into a sequence of BPF instructions. After program load
through bpf(2) and passing a verifier in the kernel, a JIT will then
translate these BPF proglets into native CPU instructions. There are
two flavors of JITs, the newer eBPF JIT currently supported on:
  - x86_64
  - arm64
  - ppc64
  - sparc64
  - mips64
  - s390x

And the older cBPF JIT supported on the following archs:
  - arm
  - mips
  - ppc
  - sparc

eBPF JITs are a superset of cBPF JITs, meaning the kernel will
migrate cBPF instructions into eBPF instructions and then JIT
compile them transparently. Older cBPF JITs can only translate
tcpdump filters, seccomp rules, etc, but not mentioned eBPF
programs loaded through bpf(2).

Values :
Values :
	0 - disable the JIT (default value)
	0 - disable the JIT (default value)
	1 - enable the JIT
	1 - enable the JIT
@@ -46,9 +71,9 @@ Values :
bpf_jit_harden
bpf_jit_harden
--------------
--------------


This enables hardening for the Berkeley Packet Filter Just in Time compiler.
This enables hardening for the BPF JIT compiler. Supported are eBPF
Supported are eBPF JIT backends. Enabling hardening trades off performance,
JIT backends. Enabling hardening trades off performance, but can
but can mitigate JIT spraying.
mitigate JIT spraying.
Values :
Values :
	0 - disable JIT hardening (default value)
	0 - disable JIT hardening (default value)
	1 - enable JIT hardening for unprivileged users only
	1 - enable JIT hardening for unprivileged users only
@@ -57,11 +82,11 @@ Values :
bpf_jit_kallsyms
bpf_jit_kallsyms
----------------
----------------


When Berkeley Packet Filter Just in Time compiler is enabled, then compiled
When BPF JIT compiler is enabled, then compiled images are unknown
images are unknown addresses to the kernel, meaning they neither show up in
addresses to the kernel, meaning they neither show up in traces nor
traces nor in /proc/kallsyms. This enables export of these addresses, which
in /proc/kallsyms. This enables export of these addresses, which can
can be used for debugging/tracing. If bpf_jit_harden is enabled, this feature
be used for debugging/tracing. If bpf_jit_harden is enabled, this
is disabled.
feature is disabled.
Values :
Values :
	0 - disable JIT kallsyms export (default value)
	0 - disable JIT kallsyms export (default value)
	1 - enable JIT kallsyms export for privileged users only
	1 - enable JIT kallsyms export for privileged users only
Loading