Skip to content

Commit

Permalink
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Browse files Browse the repository at this point in the history
  • Loading branch information
davem330 committed Feb 10, 2021
2 parents de1db4a + 291009f commit dc9d875
Show file tree
Hide file tree
Showing 320 changed files with 3,829 additions and 1,440 deletions.
8 changes: 8 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ Andrew Murray <[email protected]> <[email protected]>
Andrew Murray <[email protected]> <[email protected]>
Andrew Vasquez <[email protected]>
Andrey Ryabinin <[email protected]> <[email protected]>
Andrey Ryabinin <[email protected]> <[email protected]>
Andy Adamson <[email protected]>
Antoine Tenart <[email protected]> <[email protected]>
Antoine Tenart <[email protected]> <[email protected]>
Expand Down Expand Up @@ -179,6 +180,8 @@ Kees Cook <[email protected]> <[email protected]>
Kees Cook <[email protected]> <[email protected]>
Kees Cook <[email protected]> <[email protected]>
Kees Cook <[email protected]> <[email protected]>
Keith Busch <[email protected]> <[email protected]>
Keith Busch <[email protected]> <[email protected]>
Kenneth W Chen <[email protected]>
Konstantin Khlebnikov <[email protected]> <[email protected]>
Konstantin Khlebnikov <[email protected]> <[email protected]>
Expand All @@ -199,6 +202,8 @@ Li Yang <[email protected]> <[email protected]>
Li Yang <[email protected]> <[email protected]>
Lukasz Luba <[email protected]> <[email protected]>
Maciej W. Rozycki <[email protected]> <[email protected]>
Manivannan Sadhasivam <[email protected]> <[email protected]>
Manivannan Sadhasivam <[email protected]> <[email protected]>
Marcin Nowakowski <[email protected]> <[email protected]>
Marc Zyngier <[email protected]> <[email protected]>
Mark Brown <[email protected]>
Expand Down Expand Up @@ -244,6 +249,7 @@ Morten Welinder <[email protected]>
Morten Welinder <[email protected]>
Morten Welinder <[email protected]>
Mythri P K <[email protected]>
Nathan Chancellor <[email protected]> <[email protected]>
Nguyen Anh Quynh <[email protected]>
Nicolas Ferre <[email protected]> <[email protected]>
Nicolas Pitre <[email protected]> <[email protected]>
Expand Down Expand Up @@ -334,6 +340,8 @@ Vinod Koul <[email protected]> <[email protected]>
Viresh Kumar <[email protected]> <[email protected]>
Viresh Kumar <[email protected]> <[email protected]>
Viresh Kumar <[email protected]> <[email protected]>
Viresh Kumar <[email protected]> <[email protected]>
Viresh Kumar <[email protected]> <[email protected]>
Vivien Didelot <[email protected]> <[email protected]>
Vlad Dogaru <[email protected]> <[email protected]>
Vladimir Davydov <[email protected]> <[email protected]>
Expand Down
2 changes: 1 addition & 1 deletion Documentation/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/userspace-api/media $2 && \
PYTHONDONTWRITEBYTECODE=1 \
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
$(PYTHON) $(srctree)/scripts/jobserver-exec \
$(PYTHON3) $(srctree)/scripts/jobserver-exec \
$(SHELL) $(srctree)/Documentation/sphinx/parallel-wrapper.sh \
$(SPHINXBUILD) \
-b $2 \
Expand Down
4 changes: 2 additions & 2 deletions Documentation/admin-guide/syscall-user-dispatch.rst
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ trampoline code on the vDSO, that trampoline is never intercepted.
[selector] is a pointer to a char-sized region in the process memory
region, that provides a quick way to enable disable syscall redirection
thread-wide, without the need to invoke the kernel directly. selector
can be set to PR_SYS_DISPATCH_ON or PR_SYS_DISPATCH_OFF. Any other
value should terminate the program with a SIGSYS.
can be set to SYSCALL_DISPATCH_FILTER_ALLOW or SYSCALL_DISPATCH_FILTER_BLOCK.
Any other value should terminate the program with a SIGSYS.

Security Notes
--------------
Expand Down
3 changes: 1 addition & 2 deletions Documentation/dev-tools/kasan.rst
Original file line number Diff line number Diff line change
Expand Up @@ -163,8 +163,7 @@ particular KASAN features.
- ``kasan=off`` or ``=on`` controls whether KASAN is enabled (default: ``on``).

- ``kasan.stacktrace=off`` or ``=on`` disables or enables alloc and free stack
traces collection (default: ``on`` for ``CONFIG_DEBUG_KERNEL=y``, otherwise
``off``).
traces collection (default: ``on``).

- ``kasan.fault=report`` or ``=panic`` controls whether to only print a KASAN
report or also panic the kernel (default: ``report``).
Expand Down
22 changes: 20 additions & 2 deletions Documentation/devicetree/bindings/input/adc-keys.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ Required properties:
- compatible: "adc-keys"
- io-channels: Phandle to an ADC channel
- io-channel-names = "buttons";
- keyup-threshold-microvolt: Voltage at which all the keys are considered up.
- keyup-threshold-microvolt: Voltage above or equal to which all the keys are
considered up.

Optional properties:
- poll-interval: Poll interval time in milliseconds
Expand All @@ -17,7 +18,12 @@ Each button (key) is represented as a sub-node of "adc-keys":
Required subnode-properties:
- label: Descriptive name of the key.
- linux,code: Keycode to emit.
- press-threshold-microvolt: Voltage ADC input when this key is pressed.
- press-threshold-microvolt: voltage above or equal to which this key is
considered pressed.

No two values of press-threshold-microvolt may be the same.
All values of press-threshold-microvolt must be less than
keyup-threshold-microvolt.

Example:

Expand Down Expand Up @@ -47,3 +53,15 @@ Example:
press-threshold-microvolt = <500000>;
};
};

+--------------------------------+------------------------+
| 2.000.000 <= value | no key pressed |
+--------------------------------+------------------------+
| 1.500.000 <= value < 2.000.000 | KEY_VOLUMEUP pressed |
+--------------------------------+------------------------+
| 1.000.000 <= value < 1.500.000 | KEY_VOLUMEDOWN pressed |
+--------------------------------+------------------------+
| 500.000 <= value < 1.000.000 | KEY_ENTER pressed |
+--------------------------------+------------------------+
| value < 500.000 | no key pressed |
+--------------------------------+------------------------+
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ properties:
- goodix,gt927
- goodix,gt9271
- goodix,gt928
- goodix,gt9286
- goodix,gt967

reg:
Expand Down
8 changes: 8 additions & 0 deletions Documentation/filesystems/overlayfs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -586,6 +586,14 @@ without significant effort.
The advantage of mounting with the "volatile" option is that all forms of
sync calls to the upper filesystem are omitted.

In order to avoid a giving a false sense of safety, the syncfs (and fsync)
semantics of volatile mounts are slightly different than that of the rest of
VFS. If any writeback error occurs on the upperdir's filesystem after a
volatile mount takes place, all sync functions will return an error. Once this
condition is reached, the filesystem will not recover, and every subsequent sync
call will return an error, even if the upperdir has not experience a new error
since the last sync call.

When overlay is mounted with "volatile" option, the directory
"$workdir/work/incompat/volatile" is created. During next mount, overlay
checks for this directory and refuses to mount if present. This is a strong
Expand Down
47 changes: 21 additions & 26 deletions Documentation/kbuild/gcc-plugins.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,13 @@ compiler [1]_. They are useful for runtime instrumentation and static analysis.
We can analyse, change and add further code during compilation via
callbacks [2]_, GIMPLE [3]_, IPA [4]_ and RTL passes [5]_.

The GCC plugin infrastructure of the kernel supports all gcc versions from
4.5 to 6.0, building out-of-tree modules, cross-compilation and building in a
separate directory.
Plugin source files have to be compilable by both a C and a C++ compiler as well
because gcc versions 4.5 and 4.6 are compiled by a C compiler,
gcc-4.7 can be compiled by a C or a C++ compiler,
and versions 4.8+ can only be compiled by a C++ compiler.
The GCC plugin infrastructure of the kernel supports building out-of-tree
modules, cross-compilation and building in a separate directory.
Plugin source files have to be compilable by a C++ compiler.

Currently the GCC plugin infrastructure supports only the x86, arm, arm64 and
powerpc architectures.
Currently the GCC plugin infrastructure supports only some architectures.
Grep "select HAVE_GCC_PLUGINS" to find out which architectures support
GCC plugins.

This infrastructure was ported from grsecurity [6]_ and PaX [7]_.

Expand All @@ -47,42 +44,39 @@ Files
This is a compatibility header for GCC plugins.
It should be always included instead of individual gcc headers.

**$(src)/scripts/gcc-plugin.sh**

This script checks the availability of the included headers in
gcc-common.h and chooses the proper host compiler to build the plugins
(gcc-4.7 can be built by either gcc or g++).

**$(src)/scripts/gcc-plugins/gcc-generate-gimple-pass.h,
$(src)/scripts/gcc-plugins/gcc-generate-ipa-pass.h,
$(src)/scripts/gcc-plugins/gcc-generate-simple_ipa-pass.h,
$(src)/scripts/gcc-plugins/gcc-generate-rtl-pass.h**

These headers automatically generate the registration structures for
GIMPLE, SIMPLE_IPA, IPA and RTL passes. They support all gcc versions
from 4.5 to 6.0.
GIMPLE, SIMPLE_IPA, IPA and RTL passes.
They should be preferred to creating the structures by hand.


Usage
=====

You must install the gcc plugin headers for your gcc version,
e.g., on Ubuntu for gcc-4.9::
e.g., on Ubuntu for gcc-10::

apt-get install gcc-4.9-plugin-dev
apt-get install gcc-10-plugin-dev

Or on Fedora::

dnf install gcc-plugin-devel

Enable a GCC plugin based feature in the kernel config::
Enable the GCC plugin infrastructure and some plugin(s) you want to use
in the kernel config::

CONFIG_GCC_PLUGIN_CYC_COMPLEXITY = y
CONFIG_GCC_PLUGINS=y
CONFIG_GCC_PLUGIN_CYC_COMPLEXITY=y
CONFIG_GCC_PLUGIN_LATENT_ENTROPY=y
...

To compile only the plugin(s)::
To compile the minimum tool set including the plugin(s)::

make gcc-plugins
make scripts

or just run the kernel make and compile the whole kernel with
the cyclomatic complexity GCC plugin.
Expand All @@ -91,7 +85,8 @@ the cyclomatic complexity GCC plugin.
4. How to add a new GCC plugin
==============================

The GCC plugins are in $(src)/scripts/gcc-plugins/. You can use a file or a directory
here. It must be added to $(src)/scripts/gcc-plugins/Makefile,
$(src)/scripts/Makefile.gcc-plugins and $(src)/arch/Kconfig.
The GCC plugins are in scripts/gcc-plugins/. You need to put plugin source files
right under scripts/gcc-plugins/. Creating subdirectories is not supported.
It must be added to scripts/gcc-plugins/Makefile, scripts/Makefile.gcc-plugins
and a relevant Kconfig file.
See the cyc_complexity_plugin.c (CONFIG_GCC_PLUGIN_CYC_COMPLEXITY) GCC plugin.
44 changes: 44 additions & 0 deletions Documentation/kbuild/llvm.rst
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,50 @@ They can be enabled individually. The full list of the parameters: ::
Currently, the integrated assembler is disabled by default. You can pass
``LLVM_IAS=1`` to enable it.

Supported Architectures
-----------------------

LLVM does not target all of the architectures that Linux supports and
just because a target is supported in LLVM does not mean that the kernel
will build or work without any issues. Below is a general summary of
architectures that currently work with ``CC=clang`` or ``LLVM=1``. Level
of support corresponds to "S" values in the MAINTAINERS files. If an
architecture is not present, it either means that LLVM does not target
it or there are known issues. Using the latest stable version of LLVM or
even the development tree will generally yield the best results.
An architecture's ``defconfig`` is generally expected to work well,
certain configurations may have problems that have not been uncovered
yet. Bug reports are always welcome at the issue tracker below!

.. list-table::
:widths: 10 10 10
:header-rows: 1

* - Architecture
- Level of support
- ``make`` command
* - arm
- Supported
- ``LLVM=1``
* - arm64
- Supported
- ``LLVM=1``
* - mips
- Maintained
- ``CC=clang``
* - powerpc
- Maintained
- ``CC=clang``
* - riscv
- Maintained
- ``CC=clang``
* - s390
- Maintained
- ``CC=clang``
* - x86
- Supported
- ``LLVM=1``

Getting Help
------------

Expand Down
2 changes: 1 addition & 1 deletion Documentation/kbuild/makefiles.rst
Original file line number Diff line number Diff line change
Expand Up @@ -755,7 +755,7 @@ more details, with real examples.
bits on the scripts nonetheless.

Kbuild provides variables $(CONFIG_SHELL), $(AWK), $(PERL),
$(PYTHON) and $(PYTHON3) to refer to interpreters for the respective
and $(PYTHON3) to refer to interpreters for the respective
scripts.

Example::
Expand Down
6 changes: 4 additions & 2 deletions Documentation/virt/kvm/nested-vmx.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,10 @@ call L2.
Running nested VMX
------------------

The nested VMX feature is disabled by default. It can be enabled by giving
the "nested=1" option to the kvm-intel module.
The nested VMX feature is enabled by default since Linux kernel v4.20. For
older Linux kernel, it can be enabled by giving the "nested=1" option to the
kvm-intel module.


No modifications are required to user space (qemu). However, qemu's default
emulated CPU type (qemu64) does not list the "VMX" CPU feature, so it must be
Expand Down
2 changes: 1 addition & 1 deletion Documentation/virt/kvm/running-nested-guests.rst
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ few:
Enabling "nested" (x86)
-----------------------

From Linux kernel v4.19 onwards, the ``nested`` KVM parameter is enabled
From Linux kernel v4.20 onwards, the ``nested`` KVM parameter is enabled
by default for Intel and AMD. (Though your Linux distribution might
override this default.)

Expand Down
16 changes: 8 additions & 8 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -2616,8 +2616,8 @@ S: Maintained
F: drivers/power/reset/keystone-reset.c

ARM/TEXAS INSTRUMENTS K3 ARCHITECTURE
M: Tero Kristo <[email protected]>
M: Nishanth Menon <[email protected]>
M: Tero Kristo <[email protected]>
L: [email protected] (moderated for non-subscribers)
S: Supported
F: Documentation/devicetree/bindings/arm/ti/k3.yaml
Expand Down Expand Up @@ -4336,7 +4336,7 @@ S: Maintained
F: .clang-format

CLANG/LLVM BUILD SUPPORT
M: Nathan Chancellor <[email protected]>
M: Nathan Chancellor <[email protected]>
M: Nick Desaulniers <[email protected]>
L: [email protected]
S: Supported
Expand Down Expand Up @@ -6506,9 +6506,9 @@ S: Maintained
F: drivers/edac/skx_*.[ch]

EDAC-TI
M: Tero Kristo <t-kristo@ti.com>
M: Tero Kristo <kristo@kernel.org>
L: [email protected]
S: Maintained
S: Odd Fixes
F: drivers/edac/ti_edac.c

EDIROL UA-101/UA-1000 DRIVER
Expand Down Expand Up @@ -9591,7 +9591,7 @@ F: Documentation/hwmon/k8temp.rst
F: drivers/hwmon/k8temp.c

KASAN
M: Andrey Ryabinin <aryabinin@virtuozzo.com>
M: Andrey Ryabinin <ryabinin.a.a@gmail.com>
R: Alexander Potapenko <[email protected]>
R: Dmitry Vyukov <[email protected]>
L: [email protected]
Expand Down Expand Up @@ -17613,7 +17613,7 @@ F: include/linux/dma/k3-psil.h

TEXAS INSTRUMENTS' SYSTEM CONTROL INTERFACE (TISCI) PROTOCOL DRIVER
M: Nishanth Menon <[email protected]>
M: Tero Kristo <t-kristo@ti.com>
M: Tero Kristo <kristo@kernel.org>
M: Santosh Shilimkar <[email protected]>
L: [email protected]
S: Maintained
Expand Down Expand Up @@ -17757,9 +17757,9 @@ S: Maintained
F: drivers/clk/clk-cdce706.c

TI CLOCK DRIVER
M: Tero Kristo <t-kristo@ti.com>
M: Tero Kristo <kristo@kernel.org>
L: [email protected]
S: Maintained
S: Odd Fixes
F: drivers/clk/ti/
F: include/linux/clk/ti.h

Expand Down
Loading

0 comments on commit dc9d875

Please sign in to comment.