Go to file
Stephan Müller 5cde642478 crypto: jitter - reuse allocated entropy collector
commit 8405ec8e3c02df8b3720874c3e2169fef4553868 upstream.

In case a health test error occurs during runtime, the power-up health
tests are rerun to verify that the noise source is still good and
that the reported health test error was an outlier. For performing this
power-up health test, the already existing entropy collector instance
is used instead of allocating a new one. This change has the following
implications:

* The noise that is collected as part of the newly run health tests is
  inserted into the entropy collector and thus stirs the existing
  data present in there further. Thus, the entropy collected during
  the health test is not wasted. This is also allowed by SP800-90B.

* The power-on health test is not affected by the state of the entropy
  collector, because it resets the APT / RCT state. The remainder of
  the state is unrelated to the health test as it is only applied to
  newly obtained time stamps.

This change also fixes a bug report about an allocation while in an
atomic lock (the lock is taken in jent_kcapi_random, jent_read_entropy
is called and this can call jent_entropy_init).

Fixes: 04597c8dd6c4 ("jitter - add RCT/APT support for different OSRs")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Stephan Mueller <smueller@chronox.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Huang Cun <cunhuang@tencent.com>
2024-10-16 15:59:16 +08:00
Documentation Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
LICENSES LICENSES: Add the copyleft-next-0.3.1 license 2022-11-08 15:44:01 +01:00
arch config: iommu: default arm64 iommu Lazy mode 2024-10-16 12:40:03 +08:00
block Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
certs certs: Reference revocation list for all keyrings 2023-08-17 20:12:41 +00:00
crypto crypto: jitter - reuse allocated entropy collector 2024-10-16 15:59:16 +08:00
dist Merge branch 'haisu/master-tryrue-20240905-merge-honglin' into 'master' (merge request !197) 2024-09-29 01:56:56 +00:00
drivers mpt3sas: add mpt3sas commercial-quality driver 2024-10-15 15:51:41 +08:00
fs Merge branch 'haisu/master-cve-v9' into 'master' (merge request !204) 2024-10-12 01:09:00 +00:00
include Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
init Merge linux 6.6.48 2024-09-29 16:01:50 +08:00
io_uring io_uring/net: harden multishot termination case for recv 2024-10-10 11:58:02 +02:00
ipc sysctl: treewide: drop unused argument ctl_table_root::set_ownership(table) 2024-08-11 12:47:13 +02:00
kernel Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
lib Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
mm Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
net Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
rust rust: sync: require `T: Sync` for `LockedBy::access` 2024-10-10 11:57:44 +02:00
samples samples/bpf: Fix compilation errors with cf-protection option 2024-10-04 16:29:19 +02:00
scripts Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
security Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
sound Merge linux 6.6.55 2024-10-11 18:06:09 +08:00
tools Merge linux 6.6.56 2024-10-11 21:27:37 +08:00
usr initramfs: Encode dependency on KBUILD_BUILD_TIMESTAMP 2023-06-06 17:54:49 +09:00
virt KVM: Fix coalesced_mmio_has_room() to avoid premature userspace exit 2024-10-12 10:13:09 +08:00
.clang-format iommu: Add for_each_group_device() 2023-05-23 08:15:51 +02:00
.cocciconfig
.get_maintainer.ignore get_maintainer: add Alan to .get_maintainer.ignore 2022-08-20 15:17:44 -07:00
.gitattributes dist: initial support 2023-12-12 15:56:34 +08:00
.gitignore Merge branch '6.6.54' 2024-10-10 21:47:18 +08:00
.gitmodules drivers/thirdparty: put release-drivers in tree 2024-08-27 17:10:54 +08:00
.mailmap 20 hotfixes. 12 are cc:stable and the remainder address post-6.5 issues 2023-10-24 09:52:16 -10:00
.rustfmt.toml rust: add `.rustfmt.toml` 2022-09-28 09:02:20 +02:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS USB: Remove Wireless USB and UWB documentation 2023-08-09 14:17:32 +02:00
Kbuild Kbuild updates for v6.1 2022-10-10 12:00:45 -07:00
Kconfig kconfig: Fix duplicate "Tencent Kernel Features" menu config 2024-06-24 20:23:33 +08:00
MAINTAINERS Merge linux 6.6.51 2024-09-29 19:06:17 +08:00
Makefile Merge linux 6.6.56 2024-10-11 21:27:37 +08:00
README
config-readme Makefile, dist: add "make tencentconfig" support 2024-03-04 13:25:26 +08:00

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.