Skip to contentSkip to conversation

Linux 4.9.320

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Jun 25, 2022 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 4.9.320 kernel.

All users of the 4.9 kernel series must upgrade.

The updated 4.9.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.9.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h

------------

 Documentation/kernel-parameters.txt         |   12 
 Documentation/sysctl/kernel.txt             |   35 
 MAINTAINERS                                 |    1 
 Makefile                                    |    2 
 arch/alpha/include/asm/timex.h              |    1 
 arch/arm/include/asm/timex.h                |    1 
 arch/ia64/include/asm/timex.h               |    1 
 arch/m68k/include/asm/timex.h               |    2 
 arch/mips/include/asm/timex.h               |   17 
 arch/nios2/include/asm/timex.h              |    3 
 arch/parisc/include/asm/timex.h             |    3 
 arch/powerpc/include/asm/archrandom.h       |   27 
 arch/powerpc/include/asm/timex.h            |    1 
 arch/s390/include/asm/timex.h               |    1 
 arch/s390/mm/pgtable.c                      |    2 
 arch/sparc/include/asm/timex_32.h           |    4 
 arch/um/include/asm/timex.h                 |    9 
 arch/x86/include/asm/archrandom.h           |   12 
 arch/x86/include/asm/timex.h                |    9 
 arch/x86/include/asm/tsc.h                  |    7 
 arch/xtensa/include/asm/timex.h             |    6 
 crypto/chacha20_generic.c                   |    3 
 crypto/drbg.c                               |  220 +-
 crypto/md4.c                                |   17 
 crypto/md5.c                                |   17 
 drivers/ata/libata-core.c                   |    4 
 drivers/char/Kconfig                        |   38 
 drivers/char/hw_random/core.c               |   93 
 drivers/char/random.c                       | 2891 ++++++++++------------------
 drivers/hv/vmbus_drv.c                      |    2 
 drivers/irqchip/irq-gic-realview.c          |    1 
 drivers/irqchip/irq-gic-v3.c                |    8 
 drivers/misc/atmel-ssc.c                    |    4 
 drivers/net/ethernet/mediatek/mtk_eth_soc.c |   21 
 drivers/nfc/nfcmrvl/usb.c                   |   16 
 drivers/of/fdt.c                            |   14 
 drivers/scsi/lpfc/lpfc_nportdisc.c          |    3 
 drivers/scsi/vmw_pvscsi.h                   |    4 
 drivers/staging/comedi/drivers/vmk80xx.c    |    2 
 drivers/tty/serial/8250/8250_port.c         |    2 
 drivers/usb/gadget/udc/lpc32xx_udc.c        |    1 
 drivers/usb/serial/io_ti.c                  |    2 
 drivers/usb/serial/io_usbvend.h             |    1 
 drivers/usb/serial/option.c                 |    6 
 drivers/virtio/virtio_mmio.c                |    1 
 fs/9p/vfs_inode_dotl.c                      |   10 
 fs/ext4/mballoc.c                           |    9 
 fs/ext4/namei.c                             |    3 
 fs/ext4/resize.c                            |   10 
 fs/fuse/dev.c                               |   12 
 fs/fuse/file.c                              |    1 
 fs/fuse/fuse_i.h                            |    2 
 fs/nfs/pnfs.c                               |    6 
 include/crypto/blake2s.h                    |  102 
 include/crypto/chacha20.h                   |   17 
 include/crypto/drbg.h                       |   18 
 include/crypto/internal/blake2s.h           |   19 
 include/linux/byteorder/generic.h           |   17 
 include/linux/cpuhotplug.h                  |    2 
 include/linux/hw_random.h                   |    2 
 include/linux/miscdevice.h                  |    1 
 include/linux/mm.h                          |    2 
 include/linux/net.h                         |    2 
 include/linux/once.h                        |    2 
 include/linux/prandom.h                     |   23 
 include/linux/random.h                      |  133 -
 include/linux/siphash.h                     |   28 
 include/linux/swab.h                        |    1 
 include/linux/timex.h                       |   10 
 include/linux/uuid.h                        |    1 
 include/linux/workqueue.h                   |    7 
 include/net/inet_hashtables.h               |    2 
 include/net/secure_seq.h                    |    4 
 include/trace/events/random.h               |  315 ---
 include/uapi/linux/random.h                 |    4 
 include/uapi/linux/swab.h                   |   10 
 init/main.c                                 |   22 
 kernel/cpu.c                                |   11 
 kernel/irq/handle.c                         |    2 
 kernel/time/timekeeping.c                   |   16 
 kernel/workqueue.c                          |   76 
 lib/Kconfig.debug                           |   27 
 lib/Makefile                                |    2 
 lib/chacha20.c                              |    6 
 lib/crypto/Makefile                         |    7 
 lib/crypto/blake2s-generic.c                |  111 +
 lib/crypto/blake2s-selftest.c               |  591 +++++
 lib/crypto/blake2s.c                        |   78 
 lib/find_bit.c                              |   16 
 lib/random32.c                              |   15 
 lib/sha1.c                                  |   95 
 lib/siphash.c                               |   32 
 lib/swiotlb.c                               |   11 
 mm/util.c                                   |   33 
 net/core/secure_seq.c                       |    4 
 net/ipv4/inet_hashtables.c                  |   46 
 net/ipv6/inet6_hashtables.c                 |    4 
 net/l2tp/l2tp_ip6.c                         |    5 
 net/l2tp/l2tp_ppp.c                         |   60 
 net/sunrpc/xprtrdma/rpc_rdma.c              |    4 
 sound/soc/codecs/cs42l52.c                  |    8 
 sound/soc/codecs/cs42l56.c                  |    4 
 sound/soc/codecs/cs53l30.c                  |   16 
 sound/soc/codecs/wm8962.c                   |    1 
 104 files changed, 2965 insertions(+), 2640 deletions(-)

Adam Ford (1):
ASoC: wm8962: Fix suspend while playing music

Al Viro (1):
9p: missing chunk of "fs/9p: Don't update file type when updating file attributes"

Andi Kleen (1):
random: optimize add_interrupt_randomness

Andy Lutomirski (8):
random: Don't wake crng_init_wait when crng_init == 1
random: Add a urandom_read_nowait() for random APIs that don't warn
random: add GRND_INSECURE to return best-effort non-cryptographic bytes
random: ignore GRND_RANDOM in getentropy(2)
random: make /dev/random be almost like /dev/urandom
random: remove the blocking pool
random: delete code to pull data into pools
random: remove kernel.random.read_wakeup_threshold

Andy Shevchenko (1):
crypto: Deduplicate le32_to_cpu_array() and cpu_to_le32_array()

Ard Biesheuvel (1):
random: avoid arch_get_random_seed_long() when collecting IRQ randomness

Baokun Li (1):
ext4: fix bug_on ext4_mb_use_inode_pa

Borislav Petkov (1):
char/random: Add a newline at the end of the file

Charles Keepax (4):
ASoC: cs42l52: Fix TLV scales for mixer controls
ASoC: cs53l30: Correct number of volume levels on SX controls
ASoC: cs42l52: Correct TLV for Bypass Volume
ASoC: cs42l56: Correct typo in minimum level for SX volume controls

Chen Lin (1):
net: ethernet: mtk_eth_soc: fix misuse of mem alloc interface netdev[napi]_alloc_frag

Christian Borntraeger (1):
s390/mm: use non-quiescing sske for KVM switch to keyed guest

Colin Ian King (1):
xprtrdma: fix incorrect header size calculations

Corentin LABBE (5):
hwrng: core - do not use multiple blank lines
hwrng: core - rewrite better comparison to NULL
hwrng: core - Rewrite the header
hwrng: core - Move hwrng miscdev minor number to include/linux/miscdevice.h
hwrng: core - remove unused PFX macro

Ding Xiang (1):
ext4: make variable "count" signed

Dominik Brodowski (7):
random: fix crash on multiple early calls to add_bootloader_randomness()
random: harmonize "crng init done" messages
random: early initialization of ChaCha constants
random: continually use hwgenerator randomness
random: access primary_pool directly rather than through pointer
random: only call crng_finalize_init() for primary_crng
random: fix locking in crng_fast_load()

Eric Biggers (8):
random: fix data race on crng_node_pool
crypto: chacha20 - Fix keystream alignment for chacha20_block()
random: remove dead code left over from blocking pool
crypto: blake2s - include <linux/bug.h> instead of <asm/bug.h>
crypto: blake2s - adjust include guard naming
random: initialize ChaCha20 constants with correct endianness
crypto: chacha20 - Fix chacha20_block() keystream alignment (again)
random: remove use_input_pool parameter from crng_reseed()

Eric Dumazet (2):
tcp: change source port randomizarion at connect() time
tcp: add some entropy in __inet_hash_connect()

Fabio Estevam (1):
random: move random_min_urandom_seed into CONFIG_SYSCTL ifdef block

George Spelvin (1):
random: document get_random_int() family

Greg Kroah-Hartman (2):
Revert "char/random: silence a lockdep splat with printk()" Linux 4.9.320

Halil Pasic (1):
swiotlb: fix info leak with DMA_FROM_DEVICE

Harald Freudenberger (2):
hwrng: use rng source with best quality
hwrng: remember rng chosen by user

Helge Deller (1):
random: fix warning message on ia64 and parisc

Herbert Xu (1):
Revert "hwrng: core - Freeze khwrng thread during suspend"

Hsin-Yi Wang (1):
fdt: add support for rng-seed

Ian Abbott (1):

      comedi: vmk80xx: fix expression for tx buffer size

Ilpo Järvinen (1):
serial: 8250: Store to lsr_save_flags after lsr read

Ingo Molnar (1):
random: remove preempt disabled region

James Chapman (2):
l2tp: don't use inet_shutdown on ppp session destroy
l2tp: fix race in pppol2tp_release with session object destroy

James Smart (1):
scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology

Jan Varho (1):
random: do not split fast init input in add_hwgenerator_randomness()

Jann Horn (2):
random: don't reset crng_init_cnt on urandom_read()
random: check for signal_pending() outside of need_resched() check

Jason A. Donenfeld (124):
random: convert get_random_int/long into get_random_u32/u64
random: invalidate batched entropy after crng init
random: silence compiler warnings and fix race
random: add wait_for_random_bytes() API
random: add get_random_{bytes,u32,u64,int,long,once}_wait family
random: warn when kernel uses unseeded randomness
random: always use batched entropy for get_random_u{32,64}
random: always fill buffer in get_random_bytes_wait
random: Make crng state queryable
crypto: blake2s - generic C library implementation and selftest lib/crypto: blake2s: move hmac construction into wireguard lib/crypto: sha1: re-roll loops to reduce code size
MAINTAINERS: co-maintain random.c
random: use BLAKE2s instead of SHA1 in extraction
random: do not sign extend bytes for rotation when mixing
random: do not re-init if crng_reseed completes before primary init
random: mix bootloader randomness into pool
random: use IS_ENABLED(CONFIG_NUMA) instead of ifdefs
random: avoid superfluous call to RDRAND in CRNG extraction
random: cleanup poolinfo abstraction
random: cleanup integer types
random: remove incomplete last_data logic
random: remove unused extract_entropy() reserved argument
random: rather than entropy_store abstraction, use global
random: remove unused OUTPUT_POOL constants
random: de-duplicate INPUT_POOL constants
random: prepend remaining pool constants with POOL_
random: cleanup fractional entropy shift constants
random: access input_pool_data directly rather than through pointer
random: simplify arithmetic function flow in account()
random: use computational hash for entropy extraction
random: simplify entropy debiting
random: use linear min-entropy accumulation crediting
random: always wake up entropy writers after extraction
random: make credit_entropy_bits() always safe
random: remove batched entropy locking
random: use RDSEED instead of RDRAND in entropy extraction
random: inline leaves of rand_initialize()
random: ensure early RDSEED goes through mixer on init
random: do not xor RDRAND when writing into /dev/random
random: absorb fast pool into input pool after fast load
random: use hash function for crng_slow_load()
random: remove outdated INT_MAX >> 6 check in urandom_read()
random: zero buffer after reading entropy from userspace
random: tie batched entropy generation to base_crng generation
random: remove ifdef'd out interrupt bench
random: remove unused tracepoints
random: add proper SPDX header
random: deobfuscate irq u32/u64 contributions
random: introduce drain_entropy() helper to declutter crng_reseed()
random: remove useless header comment
random: remove whitespace and reorder includes
random: group initialization wait functions
random: group entropy extraction functions
random: group entropy collection functions
random: group userspace read/write functions
random: group sysctl functions
random: rewrite header introductory comment
random: defer fast pool mixing to worker
random: do not take pool spinlock at boot
random: unify early init crng load accounting
random: check for crng_init == 0 in add_device_randomness()
random: pull add_hwgenerator_randomness() declaration into random.h
random: clear fast pool, crng, and batches in cpuhp bring up
random: round-robin registers as ulong, not u32
random: only wake up writers after zap if threshold was passed
random: cleanup UUID handling
random: unify cycles_t and jiffies usage and types
random: do crng pre-init loading in worker rather than irq
random: give sysctl_random_min_urandom_seed a more sensible value
random: don't let 644 read-only sysctls be written to
random: replace custom notifier chain with standard one
random: use SipHash as interrupt entropy accumulator
random: make consistent usage of crng_ready()
random: reseed more often immediately after booting
random: check for signal and try earlier when generating entropy
random: skip fast_init if hwrng provides large chunk of entropy
random: treat bootloader trust toggle the same way as cpu trust toggle
random: re-add removed comment about get_random_{u32,u64} reseeding
random: mix build-time latent entropy into pool at init
random: do not allow user to keep crng key around on stack
random: check for signals every PAGE_SIZE chunk of /dev/[u]random
random: make random_get_entropy() return an unsigned long
random: document crng_fast_key_erasure() destination possibility
random: fix sysctl documentation nits
init: call time_init() before rand_initialize()
ia64: define get_cycles macro for arch-override
s390: define get_cycles macro for arch-override
parisc: define get_cycles macro for arch-override
alpha: define get_cycles macro for arch-override
powerpc: define get_cycles macro for arch-override
timekeeping: Add raw clock fallback for random_get_entropy()
m68k: use fallback for random_get_entropy() instead of zero
mips: use fallback for random_get_entropy() instead of just c0 random
arm: use fallback for random_get_entropy() instead of zero
nios2: use fallback for random_get_entropy() instead of zero x86/tsc: Use fallback for random_get_entropy() instead of zero
um: use fallback for random_get_entropy() instead of zero
sparc: use fallback for random_get_entropy() instead of zero
xtensa: use fallback for random_get_entropy() instead of zero
random: insist on random_get_entropy() existing in order to simplify
random: do not use batches when !crng_ready()
random: do not pretend to handle premature next security model
random: order timer entropy functions below interrupt functions
random: do not use input pool from hard IRQs
random: help compiler out with fast_mix() by using simpler arguments
siphash: use one source of truth for siphash permutations
random: use symbolic constants for crng_init states
random: avoid initializing twice in credit race
random: remove ratelimiting for in-kernel unseeded randomness
random: use proper jiffies comparison macro
random: handle latent entropy and command line from random_init()
random: credit architectural init the exact amount
random: use static branch for crng_ready()
random: remove extern from functions in header
random: use proper return types on get_random_{int,long}_wait()
random: move initialization functions out of hot pages
random: move randomize_page() into mm where it belongs
random: check for signals after page of pool writes
Revert "random: use static branch for crng_ready()"
random: avoid checking crng_ready() twice in random_init()
random: mark bootloader randomness code as __init
random: account for arch randomness in bits
random: credit cpu and bootloader seeds by default

Jens Axboe (2):

      random: convert to using fops->write_iter()
      random: wire up fops->splice_{read,write}_iter()

Kees Cook (3):
random: do not ignore early device randomness
random: make CPU trust a boot parameter
random: move rand_initialize() earlier

Linus Torvalds (2):
random: try to actively add entropy rather than passively wait for it Reinstate some of "swiotlb: rework "fix info leak with DMA_FROM_DEVICE""

Mark Brown (1):
random: document add_hwgenerator_randomness() with other input functions

Mark Rutland (3):
random: split primary/secondary crng init paths
random: avoid warnings for !CONFIG_NUMA builds
random: add arch_get_random_*long_early()

Miaoqian Lin (3):
misc: atmel-ssc: Fix IRQ check in ssc_probe irqchip/gic/realview: Fix refcount leak in realview_gic_of_init
usb: gadget: lpc32xx_udc: Fix refcount leak in lpc32xx_udc_probe

Miklos Szeredi (1):
fuse: fix pipe buffer lifetime for direct_io

Nicolai Stange (4):
crypto: drbg - prepare for more fine-grained tracking of seeding state
crypto: drbg - track whether DRBG was seeded with !rng_is_initialized()
crypto: drbg - move dynamic ->reseed_threshold adjustments to __drbg_seed()
crypto: drbg - make reseeding from get_random_bytes() synchronous

Rasmus Villemoes (4):
drivers/char/random.c: remove unused dont_count_entropy drivers/char/random.c: constify poolinfo_table drivers/char/random.c: remove unused stuct poolinfo::poolbits drivers/char/random.c: make primary_crng static

Richard Henderson (6):
x86: Remove arch_has_random, arch_has_random_seed
powerpc: Remove arch_has_random, arch_has_random_seed linux/random.h: Remove arch_has_random, arch_has_random_seed linux/random.h: Use false with bool
linux/random.h: Mark CONFIG_ARCH_RANDOM functions __must_check
powerpc: Use bool in archrandom.h

Robert Eckelmann (1):
USB: serial: io_ti: add Agilent E5805A support

Schspa Shi (1):
random: fix typo in comments

Sebastian Andrzej Siewior (3):
random: reorder READ_ONCE() in get_random_uXX
random: add a spinlock_t to struct batched_entropy
random: remove unused irq_flags argument from add_interrupt_randomness()

Sergey Senozhatsky (1):
char/random: silence a lockdep splat with printk()

Sergey Shtylyov (1):
ata: libata-core: fix NULL pointer deref in ata_host_alloc_pinfo()

Slark Xiao (1):
USB: serial: option: add support for Cinterion MV31 with new baseline

Stephan Mueller (2):
random: remove stale maybe_reseed_primary_crng
crypto: drbg - add FIPS 140-2 CTRNG for noise source

Stephan Müller (5):
random: remove stale urandom_init_wait
random: remove variable limit
random: fix comment for unused random_min_urandom_seed
crypto: drbg - always seeded with SP800-90B compliant noise source
crypto: drbg - always try to free Jitter RNG instance

Stephen Boyd (2):
random: Support freezable kthreads in add_hwgenerator_randomness()
random: Use wait_event_freezable() in add_hwgenerator_randomness()

Tejun Heo (1):
workqueue: make workqueue available early during boot

Theodore Ts'o (8):
random: suppress spammy warnings about unseeded randomness
random: use a different mixing algorithm for add_device_randomness()
random: set up the NUMA crng instances after the CRNG is fully initialized
random: fix possible sleeping allocation from irq context
random: rate limit unseeded randomness warnings
random: add a config option to trust the CPU's hwrng
random: only read from /dev/random after its pool has received 128 bits
random: fix soft lockup when trying to read from an uninitialized blocking pool

Tobin C. Harding (2):
random: Fix whitespace pre random-bytes work
random: Return nbytes filled from hw RNG

Trond Myklebust (1):
pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE

Vasily Gorbik (1):
latent_entropy: avoid build error when plugin cflags are not set

Wang Yufen (1):
ipv6: Fix signed integer overflow in l2tp_ip6_sendmsg

Wentao Wang (1):
scsi: vmw_pvscsi: Expand vcpuHint to 16 bits

Willy Tarreau (6):
secure_seq: use the 64 bits of the siphash for port offset calculation
tcp: use different parts of the port_offset for index and offset
tcp: add small random increments to the source port
tcp: dynamically allocate the perturb table used by source ports
tcp: increase source port perturb table to 2^16
tcp: drop the hash_32() part from the index calculation

Xiaohui Zhang (1):
nfc: nfcmrvl: Fix memory leak in nfcmrvl_play_deferred

Yangtao Li (5):
random: remove unnecessary unlikely()
random: convert to ENTROPY_BITS for better code readability
random: Add and use pr_fmt()
random: fix typo in add_timer_randomness()
random: remove some dead code of poolinfo

Yury Norov (1):
uapi: rename ext2_swab() to swab() and share globally in swab.h

Zhang Yi (1):
ext4: add reserved GDT blocks check

chengkaitao (1):
virtio-mmio: fix missing put_device() when vm_cmdline_parent registration failed

zijun_hu (1):
irqchip/gic-v3: Iterate over possible CPUs by for_each_possible_cpu()

author maintainer
#1 lore raw
Documentation/kernel-parameters.txt +12 -0
index 97c0ff0787ea..92a9a3282c5b 100644
@@ -3577,6 +3577,18 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
 	ramdisk_size=	[RAM] Sizes of RAM disks in kilobytes
 			See Documentation/blockdev/ramdisk.txt.
 
+	random.trust_cpu={on,off}
+			[KNL] Enable or disable trusting the use of the
+			CPU's random number generator (if available) to
+			fully seed the kernel's CRNG. Default is controlled
+			by CONFIG_RANDOM_TRUST_CPU.
+
+	random.trust_bootloader={on,off}
+			[KNL] Enable or disable trusting the use of a
+			seed passed by the bootloader (if available) to
+			fully seed the kernel's CRNG. Default is controlled
+			by CONFIG_RANDOM_TRUST_BOOTLOADER.
+
 	rcu_nocbs=	[KNL]
 			The argument is a cpu list, as described above.
 
Documentation/sysctl/kernel.txt +33 -2
index 30ba179392d8..79608693ef0b 100644
@@ -777,9 +777,40 @@ The kernel command line parameter printk.devkmsg= overrides this and is
 a one-time setting until next reboot: once set, it cannot be changed by
 this sysctl interface anymore.
 
-==============================================================
+pty
+===
+
+See Documentation/filesystems/devpts.rst.
+
+
+random
+======
+
+This is a directory, with the following entries:
+
+* ``boot_id``: a UUID generated the first time this is retrieved, and
+  unvarying after that;
+
+* ``uuid``: a UUID generated every time this is retrieved (this can
+  thus be used to generate UUIDs at will);
+
+* ``entropy_avail``: the pool's entropy count, in bits;
+
+* ``poolsize``: the entropy pool size, in bits;
+
+* ``urandom_min_reseed_secs``: obsolete (used to determine the minimum
+  number of seconds between urandom pool reseeding). This file is
+  writable for compatibility purposes, but writing to it has no effect
+  on any RNG behavior;
+
+* ``write_wakeup_threshold``: when the entropy count drops below this
+  (as a number of bits), processes waiting to write to ``/dev/random``
+  are woken up. This file is writable for compatibility purposes, but
+  writing to it has no effect on any RNG behavior.
+
 
-randomize_va_space:
+randomize_va_space
+==================
 
 This option can be used to select the type of process address
 space randomization that is used in the system, for architectures
MAINTAINERS +1 -0
index fcaab221553e..afafd0fa18a9 100644
@@ -10068,6 +10068,7 @@ F:	drivers/block/brd.c
 
 RANDOM NUMBER DRIVER
 M:	"Theodore Ts'o" <[email protected]>
+M:	Jason A. Donenfeld <[email protected]>
 S:	Maintained
 F:	drivers/char/random.c
 
Makefile +1 -1
index bf4a7b0fe8e7..04cefc7d5b47 100644
@@ -1,6 +1,6 @@
 VERSION = 4
 PATCHLEVEL = 9
-SUBLEVEL = 319
+SUBLEVEL = 320
 EXTRAVERSION =
 NAME = Roaring Lionus
 
arch/alpha/include/asm/timex.h +1 -0
index afa0c45e3e98..c3ed97c79086 100644
@@ -27,5 +27,6 @@ static inline cycles_t get_cycles (void)
 	__asm__ __volatile__ ("rpcc %0" : "=r"(ret));
 	return ret;
 }
+#define get_cycles get_cycles
 
 #endif
arch/arm/include/asm/timex.h +1 -0
index f6fcc67ef06e..c06d38f0df8e 100644
@@ -14,5 +14,6 @@
 
 typedef unsigned long cycles_t;
 #define get_cycles()	({ cycles_t c; read_current_timer(&c) ? 0 : c; })
+#define random_get_entropy() (((unsigned long)get_cycles()) ?: random_get_entropy_fallback())
 
 #endif
arch/ia64/include/asm/timex.h +1 -0
index 86c7db861180..0117fa73ad49 100644
@@ -38,6 +38,7 @@ get_cycles (void)
 	ret = ia64_getreg(_IA64_REG_AR_ITC);
 	return ret;
 }
+#define get_cycles get_cycles
 
 extern void ia64_cpu_local_tick (void);
 extern unsigned long long ia64_native_sched_clock (void);
arch/m68k/include/asm/timex.h +1 -1
index efc1f4892357..bbaf67f3a952 100644
@@ -34,7 +34,7 @@ static inline unsigned long random_get_entropy(void)
 {
 	if (mach_random_get_entropy)
 		return mach_random_get_entropy();
-	return 0;
+	return random_get_entropy_fallback();
 }
 #define random_get_entropy	random_get_entropy
 
arch/mips/include/asm/timex.h +8 -9
index 8026baf46e72..2e107886f97a 100644
@@ -76,25 +76,24 @@ static inline cycles_t get_cycles(void)
 	else
 		return 0;	/* no usable counter */
 }
+#define get_cycles get_cycles
 
 /*
  * Like get_cycles - but where c0_count is not available we desperately
  * use c0_random in an attempt to get at least a little bit of entropy.
- *
- * R6000 and R6000A neither have a count register nor a random register.
- * That leaves no entropy source in the CPU itself.
  */
 static inline unsigned long random_get_entropy(void)
 {
-	unsigned int prid = read_c0_prid();
-	unsigned int imp = prid & PRID_IMP_MASK;
+	unsigned int c0_random;
 
-	if (can_use_mips_counter(prid))
+	if (can_use_mips_counter(read_c0_prid()))
 		return read_c0_count();
-	else if (likely(imp != PRID_IMP_R6000 && imp != PRID_IMP_R6000A))
-		return read_c0_random();
+
+	if (cpu_has_3kex)
+		c0_random = (read_c0_random() >> 8) & 0x3f;
 	else
-		return 0;	/* no usable register */
+		c0_random = read_c0_random() & 0x3f;
+	return (random_get_entropy_fallback() << 6) | (0x3f - c0_random);
 }
 #define random_get_entropy random_get_entropy
 
arch/nios2/include/asm/timex.h +3 -0
index 2f2abb28ec2f..9c9b50599ea3 100644
@@ -20,5 +20,8 @@
 typedef unsigned long cycles_t;
 
 extern cycles_t get_cycles(void);
+#define get_cycles get_cycles
+
+#define random_get_entropy() (((unsigned long)get_cycles()) ?: random_get_entropy_fallback())
 
 #endif
arch/parisc/include/asm/timex.h +2 -1
index 2bd51f6d832b..87aeeee5b700 100644
@@ -11,9 +11,10 @@
 
 typedef unsigned long cycles_t;
 
-static inline cycles_t get_cycles (void)
+static inline cycles_t get_cycles(void)
 {
 	return mfctl(16);
 }
+#define get_cycles get_cycles
 
 #endif
arch/powerpc/include/asm/archrandom.h +9 -18
index 9ff848e3c4a6..d8da8c0fb928 100644
@@ -5,27 +5,28 @@
 
 #include <asm/machdep.h>
 
-static inline int arch_get_random_long(unsigned long *v)
+static inline bool arch_get_random_long(unsigned long *v)
 {
-	return 0;
+	return false;
 }
 
-static inline int arch_get_random_int(unsigned int *v)
+static inline bool arch_get_random_int(unsigned int *v)
 {
-	return 0;
+	return false;
 }
 
-static inline int arch_get_random_seed_long(unsigned long *v)
+static inline bool arch_get_random_seed_long(unsigned long *v)
 {
 	if (ppc_md.get_random_seed)
 		return ppc_md.get_random_seed(v);
 
-	return 0;
+	return false;
 }
-static inline int arch_get_random_seed_int(unsigned int *v)
+
+static inline bool arch_get_random_seed_int(unsigned int *v)
 {
 	unsigned long val;
-	int rc;
+	bool rc;
 
 	rc = arch_get_random_seed_long(&val);
 	if (rc)
@@ -33,16 +34,6 @@ static inline int arch_get_random_seed_int(unsigned int *v)
 
 	return rc;
 }
-
-static inline int arch_has_random(void)
-{
-	return 0;
-}
-
-static inline int arch_has_random_seed(void)
-{
-	return !!ppc_md.get_random_seed;
-}
 #endif /* CONFIG_ARCH_RANDOM */
 
 #ifdef CONFIG_PPC_POWERNV
arch/powerpc/include/asm/timex.h +1 -0
index 2cf846edb3fc..28b8a63bc366 100644
@@ -53,6 +53,7 @@ static inline cycles_t get_cycles(void)
 	return ret;
 #endif
 }
+#define get_cycles get_cycles
 
 #endif	/* __KERNEL__ */
 #endif	/* _ASM_POWERPC_TIMEX_H */
arch/s390/include/asm/timex.h +1 -0
index f1330245b584..f9c222cfc65c 100644
@@ -168,6 +168,7 @@ static inline cycles_t get_cycles(void)
 {
 	return (cycles_t) get_tod_clock() >> 2;
 }
+#define get_cycles get_cycles
 
 int get_phys_clock(unsigned long long *clock);
 void init_cpu_timer(void);
arch/s390/mm/pgtable.c +1 -1
index 7678f7956409..1847bc3ff163 100644
@@ -595,7 +595,7 @@ void ptep_zap_key(struct mm_struct *mm, unsigned long addr, pte_t *ptep)
 			      PGSTE_GR_BIT | PGSTE_GC_BIT);
 	ptev = pte_val(*ptep);
 	if (!(ptev & _PAGE_INVALID) && (ptev & _PAGE_WRITE))
-		page_set_storage_key(ptev & PAGE_MASK, PAGE_DEFAULT_KEY, 1);
+		page_set_storage_key(ptev & PAGE_MASK, PAGE_DEFAULT_KEY, 0);
 	pgste_set_unlock(ptep, pgste);
 	preempt_enable();
 }
arch/sparc/include/asm/timex_32.h +1 -3
index b6ccdb0d6f7d..b805c511755d 100644
@@ -8,8 +8,6 @@
 
 #define CLOCK_TICK_RATE	1193180 /* Underlying HZ */
 
-/* XXX Maybe do something better at some point... -DaveM */
-typedef unsigned long cycles_t;
-#define get_cycles()	(0)
+#include <asm-generic/timex.h>
 
 #endif
arch/um/include/asm/timex.h +2 -7
index 0f4ada08f748..62a0fbf79420 100644
@@ -1,13 +1,8 @@
 #ifndef __UM_TIMEX_H
 #define __UM_TIMEX_H
 
-typedef unsigned long cycles_t;
-
-static inline cycles_t get_cycles (void)
-{
-	return 0;
-}
-
 #define CLOCK_TICK_RATE (HZ)
 
+#include <asm-generic/timex.h>
+
 #endif
arch/x86/include/asm/archrandom.h +4 -8
index 3ac991d81e74..4d3cac3c9b25 100644
@@ -86,10 +86,6 @@ static inline bool rdseed_int(unsigned int *v)
 	return ok;
 }
 
-/* Conditional execution based on CPU type */
-#define arch_has_random()	static_cpu_has(X86_FEATURE_RDRAND)
-#define arch_has_random_seed()	static_cpu_has(X86_FEATURE_RDSEED)
-
 /*
  * These are the generic interfaces; they must not be declared if the
  * stubs in <linux/random.h> are to be invoked,
@@ -99,22 +95,22 @@ static inline bool rdseed_int(unsigned int *v)
 
 static inline bool arch_get_random_long(unsigned long *v)
 {
-	return arch_has_random() ? rdrand_long(v) : false;
+	return static_cpu_has(X86_FEATURE_RDRAND) ? rdrand_long(v) : false;
 }
 
 static inline bool arch_get_random_int(unsigned int *v)
 {
-	return arch_has_random() ? rdrand_int(v) : false;
+	return static_cpu_has(X86_FEATURE_RDRAND) ? rdrand_int(v) : false;
 }
 
 static inline bool arch_get_random_seed_long(unsigned long *v)
 {
-	return arch_has_random_seed() ? rdseed_long(v) : false;
+	return static_cpu_has(X86_FEATURE_RDSEED) ? rdseed_long(v) : false;
 }
 
 static inline bool arch_get_random_seed_int(unsigned int *v)
 {
-	return arch_has_random_seed() ? rdseed_int(v) : false;
+	return static_cpu_has(X86_FEATURE_RDSEED) ? rdseed_int(v) : false;
 }
 
 extern void x86_init_rdrand(struct cpuinfo_x86 *c);
arch/x86/include/asm/timex.h +9 -0
index 1375cfc93960..627802b6204c 100644
@@ -4,6 +4,15 @@
 #include <asm/processor.h>
 #include <asm/tsc.h>
 
+static inline unsigned long random_get_entropy(void)
+{
+	if (!IS_ENABLED(CONFIG_X86_TSC) &&
+	    !cpu_feature_enabled(X86_FEATURE_TSC))
+		return random_get_entropy_fallback();
+	return rdtsc();
+}
+#define random_get_entropy random_get_entropy
+
 /* Assume we use the PIT time source for the clock tick */
 #define CLOCK_TICK_RATE		PIT_TICK_RATE
 
arch/x86/include/asm/tsc.h +3 -4
index 33b6365c22fe..23235c5ef1a1 100644
@@ -21,13 +21,12 @@ extern void disable_TSC(void);
 
 static inline cycles_t get_cycles(void)
 {
-#ifndef CONFIG_X86_TSC
-	if (!boot_cpu_has(X86_FEATURE_TSC))
+	if (!IS_ENABLED(CONFIG_X86_TSC) &&
+	    !cpu_feature_enabled(X86_FEATURE_TSC))
 		return 0;
-#endif
-
 	return rdtsc();
 }
+#define get_cycles get_cycles
 
 extern struct system_counterval_t convert_art_to_tsc(cycle_t art);
 
arch/xtensa/include/asm/timex.h +2 -4
index f9b389d4e973..d866bc847d8d 100644
@@ -30,10 +30,6 @@
 
 extern unsigned long ccount_freq;
 
-typedef unsigned long long cycles_t;
-
-#define get_cycles()	(0)
-
 void local_timer_setup(unsigned cpu);
 
 /*
@@ -69,4 +65,6 @@ static inline void set_linux_timer (unsigned long ccompare)
 	WSR_CCOMPARE(LINUX_TIMER, ccompare);
 }
 
+#include <asm-generic/timex.h>
+
 #endif	/* _XTENSA_TIMEX_H */
crypto/chacha20_generic.c +2 -1
index 1cab83146e33..56603afbf6bd 100644
@@ -23,7 +23,8 @@ static inline u32 le32_to_cpuvp(const void *p)
 static void chacha20_docrypt(u32 *state, u8 *dst, const u8 *src,
 			     unsigned int bytes)
 {
-	u8 stream[CHACHA20_BLOCK_SIZE];
+	/* aligned to potentially speed up crypto_xor() */
+	u8 stream[CHACHA20_BLOCK_SIZE] __aligned(sizeof(long));
 
 	if (dst != src)
 		memcpy(dst, src, bytes);
crypto/drbg.c +149 -71

339 lines not on this page · raw message

crypto/md4.c +0 -17
index 3515af425cc9..810fefb0a007 100644
@@ -64,23 +64,6 @@ static inline u32 H(u32 x, u32 y, u32 z)
 #define ROUND2(a,b,c,d,k,s) (a = lshift(a + G(b,c,d) + k + (u32)0x5A827999,s))
 #define ROUND3(a,b,c,d,k,s) (a = lshift(a + H(b,c,d) + k + (u32)0x6ED9EBA1,s))
 
-/* XXX: this stuff can be optimized */
-static inline void le32_to_cpu_array(u32 *buf, unsigned int words)
-{
-	while (words--) {
-		__le32_to_cpus(buf);
-		buf++;
-	}
-}
-
-static inline void cpu_to_le32_array(u32 *buf, unsigned int words)
-{
-	while (words--) {
-		__cpu_to_le32s(buf);
-		buf++;
-	}
-}
-
 static void md4_transform(u32 *hash, u32 const *in)
 {
 	u32 a, b, c, d;
crypto/md5.c +0 -17
index 2355a7c25c45..419f2379b406 100644
@@ -30,23 +30,6 @@ const u8 md5_zero_message_hash[MD5_DIGEST_SIZE] = {
 };
 EXPORT_SYMBOL_GPL(md5_zero_message_hash);
 
-/* XXX: this stuff can be optimized */
-static inline void le32_to_cpu_array(u32 *buf, unsigned int words)
-{
-	while (words--) {
-		__le32_to_cpus(buf);
-		buf++;
-	}
-}
-
-static inline void cpu_to_le32_array(u32 *buf, unsigned int words)
-{
-	while (words--) {
-		__cpu_to_le32s(buf);
-		buf++;
-	}
-}
-
 static inline void md5_transform_helper(struct md5_state *ctx)
 {
 	le32_to_cpu_array(ctx->block, sizeof(ctx->block) / sizeof(u32));
drivers/ata/libata-core.c +2 -2
index 35db918a1de5..42f0a592b5ab 100644
@@ -6051,7 +6051,7 @@ struct ata_host *ata_host_alloc_pinfo(struct device *dev,
 				      const struct ata_port_info * const * ppi,
 				      int n_ports)
 {
-	const struct ata_port_info *pi;
+	const struct ata_port_info *pi = &ata_dummy_port_info;
 	struct ata_host *host;
 	int i, j;
 
@@ -6059,7 +6059,7 @@ struct ata_host *ata_host_alloc_pinfo(struct device *dev,
 	if (!host)
 		return NULL;
 
-	for (i = 0, j = 0, pi = NULL; i < host->n_ports; i++) {
+	for (i = 0, j = 0; i < host->n_ports; i++) {
 		struct ata_port *ap = host->ports[i];
 
 		if (ppi[j])
drivers/char/Kconfig +37 -1
index f4ae000eb285..1d3813d4f5c8 100644
@@ -593,5 +593,41 @@ config TILE_SROM
 
 source "drivers/char/xillybus/Kconfig"
 
-endmenu
+config RANDOM_TRUST_CPU
+	bool "Initialize RNG using CPU RNG instructions"
+	default y
+	depends on ARCH_RANDOM
+	help
+	  Initialize the RNG using random numbers supplied by the CPU's
+	  RNG instructions (e.g. RDRAND), if supported and available. These
+	  random numbers are never used directly, but are rather hashed into
+	  the main input pool, and this happens regardless of whether or not
+	  this option is enabled. Instead, this option controls whether the
+	  they are credited and hence can initialize the RNG. Additionally,
+	  other sources of randomness are always used, regardless of this
+	  setting.  Enabling this implies trusting that the CPU can supply high
+	  quality and non-backdoored random numbers.
+
+	  Say Y here unless you have reason to mistrust your CPU or believe
+	  its RNG facilities may be faulty. This may also be configured at
+	  boot time with "random.trust_cpu=on/off".
+
+config RANDOM_TRUST_BOOTLOADER
+	bool "Initialize RNG using bootloader-supplied seed"
+	default y
+	help
+	  Initialize the RNG using a seed supplied by the bootloader or boot
+	  environment (e.g. EFI or a bootloader-generated device tree). This
+	  seed is not used directly, but is rather hashed into the main input
+	  pool, and this happens regardless of whether or not this option is
+	  enabled. Instead, this option controls whether the seed is credited
+	  and hence can initialize the RNG. Additionally, other sources of
+	  randomness are always used, regardless of this setting. Enabling
+	  this implies trusting that the bootloader can supply high quality and
+	  non-backdoored seeds.
+
+	  Say Y here unless you have reason to mistrust your bootloader or
+	  believe its RNG facilities may be faulty. This may also be configured
+	  at boot time with "random.trust_bootloader=on/off".
 
+endmenu
drivers/char/hw_random/core.c +48 -45

178 lines not on this page · raw message

drivers/char/random.c +1092 -1799

2,036 lines not on this page · raw message

drivers/hv/vmbus_drv.c +1 -1
index 9a0d0d0ad6d0..3248aa7a35b3 100644

Lines of this file are not shown. View the raw message.

drivers/irqchip/irq-gic-realview.c +1 -0
index 54c296401525..61024882c685 100644

Lines of this file are not shown. View the raw message.

drivers/irqchip/irq-gic-v3.c +4 -4
index 2ab6060031a4..9ae24ffb9b09 100644

Lines of this file are not shown. View the raw message.

drivers/misc/atmel-ssc.c +2 -2
index 8c9a444d61d3..65bc573d6ab4 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/mediatek/mtk_eth_soc.c +19 -2
index 84d667957221..61a9b60ab022 100644

Lines of this file are not shown. View the raw message.

drivers/nfc/nfcmrvl/usb.c +14 -2
index 585a0f20835b..3263e2a2bdfd 100644

Lines of this file are not shown. View the raw message.

drivers/of/fdt.c +12 -2
index 6a239c9bbf59..e797fa92c90d 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/lpfc/lpfc_nportdisc.c +2 -1
index 30b5f65b29d1..7f230d0b2fd6 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/vmw_pvscsi.h +2 -2
index d41292ef85f2..98ad17cb6643 100644

Lines of this file are not shown. View the raw message.

drivers/staging/comedi/drivers/vmk80xx.c +1 -1
index 36470ee06596..6010c047f4f8 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/8250/8250_port.c +2 -0
index 2d83f1dfb4d6..d3f17b23ac61 100644

Lines of this file are not shown. View the raw message.

drivers/usb/gadget/udc/lpc32xx_udc.c +1 -0
index 710793161795..498a44ae2b92 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/io_ti.c +2 -0
index e98532feb0cc..8e49eb68896a 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/io_usbvend.h +1 -0
index 6f6a856bc37c..a470262dcf48 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/option.c +6 -0
index 5b198d881a40..8add5a762f21 100644

Lines of this file are not shown. View the raw message.

drivers/virtio/virtio_mmio.c +1 -0
index 50840984fbfa..f62da3b7c27b 100644

Lines of this file are not shown. View the raw message.

fs/9p/vfs_inode_dotl.c +3 -7
index 425bc1a2b8c1..77a97195ef35 100644

Lines of this file are not shown. View the raw message.

fs/ext4/mballoc.c +9 -0
index 2a7fb2cf19b8..f39b65601233 100644

Lines of this file are not shown. View the raw message.

fs/ext4/namei.c +2 -1
index 159d259e5e5e..edf78728ed32 100644

Lines of this file are not shown. View the raw message.

fs/ext4/resize.c +10 -0
index 51fa706707a3..c367129dcdc1 100644

Lines of this file are not shown. View the raw message.

fs/fuse/dev.c +11 -1
index 585c52dbb2e3..13cf7c260a83 100644

Lines of this file are not shown. View the raw message.

fs/fuse/file.c +1 -0
index 8aef8e56eb1b..aa4f0d632bed 100644

Lines of this file are not shown. View the raw message.

fs/fuse/fuse_i.h +2 -0
index 7e4b0e298bc7..6104534ddb7e 100644

Lines of this file are not shown. View the raw message.

fs/nfs/pnfs.c +6 -0
index f19cded49b29..317d22f84492 100644

Lines of this file are not shown. View the raw message.

include/crypto/blake2s.h new file +102 -0

102 lines not on this page · raw message

include/crypto/chacha20.h +16 -1
index 20d20f681a72..0b8deb5e8291 100644

Lines of this file are not shown. View the raw message.

include/crypto/drbg.h +10 -8
index 22f884c97387..19b44179bb7c 100644

Lines of this file are not shown. View the raw message.

include/crypto/internal/blake2s.h new file +19 -0
new file mode 100644
index 000000000000..3ba066845b69

Lines of this file are not shown. View the raw message.

include/linux/byteorder/generic.h +17 -0
index 89f67c1c3160..9cf01d7bb7c0 100644

Lines of this file are not shown. View the raw message.

include/linux/cpuhotplug.h +2 -0
index 1ab0273560ae..8160ad1885dc 100644

Lines of this file are not shown. View the raw message.

include/linux/hw_random.h +0 -2
index 34a0dc18f327..48e28f7844fe 100644

Lines of this file are not shown. View the raw message.

include/linux/miscdevice.h +1 -0
index 722698a43d79..659f58617b9e 100644

Lines of this file are not shown. View the raw message.

include/linux/mm.h +2 -0
index 81ee5d0b2642..ebfe5b771153 100644

Lines of this file are not shown. View the raw message.

include/linux/net.h +2 -0
index 54270c4707cf..455aa9c1247c 100644

Lines of this file are not shown. View the raw message.

include/linux/once.h +2 -0
index 285f12cb40e6..9c98aaa87cbc 100644

Lines of this file are not shown. View the raw message.

include/linux/prandom.h +7 -16
index e20339c78a84..709e8e69fb39 100644

Lines of this file are not shown. View the raw message.

include/linux/random.h +85 -48

133 lines not on this page · raw message

include/linux/siphash.h +28 -0
index 0cda61855d90..0bb5ecd507be 100644

Lines of this file are not shown. View the raw message.

include/linux/swab.h +1 -0
index 9ad3c60f6cae..f66e6f8bf049 100644

Lines of this file are not shown. View the raw message.

include/linux/timex.h +9 -1
index 39c25dbebfe8..c7616cfb48d2 100644

Lines of this file are not shown. View the raw message.

include/linux/uuid.h +1 -0
index 2d095fc60204..c77fb14868b7 100644

Lines of this file are not shown. View the raw message.

include/linux/workqueue.h +6 -1
index 8e880f7f67b2..b95c511139b9 100644

Lines of this file are not shown. View the raw message.

include/net/inet_hashtables.h +1 -1
index fc445e7ccadf..c3cf2021bb3b 100644

Lines of this file are not shown. View the raw message.

include/net/secure_seq.h +2 -2
index 3f36d45b714a..542a80c05107 100644

Lines of this file are not shown. View the raw message.

include/trace/events/random.h deleted +0 -315

315 lines not on this page · raw message

include/uapi/linux/random.h +3 -1
index b455b0d86f26..b01d118750ab 100644

Lines of this file are not shown. View the raw message.

include/uapi/linux/swab.h +10 -0
index 8f3a8f606fd9..1f42d110987a 100644

Lines of this file are not shown. View the raw message.

init/main.c +22 -0
index 0c01d4e10d2f..30226a836c8b 100644

Lines of this file are not shown. View the raw message.

kernel/cpu.c +11 -0
index e005209f279e..5ddac8914515 100644

Lines of this file are not shown. View the raw message.

kernel/irq/handle.c +1 -1
index d3f24905852c..374c45fbe3db 100644

Lines of this file are not shown. View the raw message.

kernel/time/timekeeping.c +16 -0
index bcba817f7af2..828728639e0d 100644

Lines of this file are not shown. View the raw message.

kernel/workqueue.c +60 -16

76 lines not on this page · raw message

lib/Kconfig.debug +27 -0
index e7addfcd302f..95be8e1b12f6 100644

Lines of this file are not shown. View the raw message.

lib/Makefile +2 -0
index 7a55c5205281..775d6ef6d2ef 100644

Lines of this file are not shown. View the raw message.

lib/chacha20.c +3 -3
index 250ceed9ec9a..5f6c222e939a 100644

Lines of this file are not shown. View the raw message.

lib/crypto/Makefile new file +7 -0
new file mode 100644
index 000000000000..d0bca68618f0

Lines of this file are not shown. View the raw message.

lib/crypto/blake2s-generic.c new file +111 -0

111 lines not on this page · raw message

lib/crypto/blake2s-selftest.c new file +591 -0

591 lines not on this page · raw message

lib/crypto/blake2s.c new file +78 -0

78 lines not on this page · raw message

lib/find_bit.c +2 -14
index 18072ea9c20e..479d0a9cf69f 100644

Lines of this file are not shown. View the raw message.

lib/random32.c +10 -5
index 3c5b67b69cba..7e630025cbc3 100644

Lines of this file are not shown. View the raw message.

lib/sha1.c +14 -81

95 lines not on this page · raw message

lib/siphash.c +10 -22
index e632ee40aac1..5b34b5c83988 100644

Lines of this file are not shown. View the raw message.

lib/swiotlb.c +8 -3
index 74b5b8862198..277a2f6fde6b 100644

Lines of this file are not shown. View the raw message.

mm/util.c +33 -0
index 07f467206186..0559a1feec02 100644

Lines of this file are not shown. View the raw message.

net/core/secure_seq.c +2 -2
index fd3ce461fbe6..ed05b8277aa4 100644

Lines of this file are not shown. View the raw message.

net/ipv4/inet_hashtables.c +40 -6

46 lines not on this page · raw message

net/ipv6/inet6_hashtables.c +2 -2
index d47cab6d7c6d..8223ac61a9fd 100644

Lines of this file are not shown. View the raw message.

net/l2tp/l2tp_ip6.c +3 -2
index 76ef758db112..e412020029df 100644

Lines of this file are not shown. View the raw message.

net/l2tp/l2tp_ppp.c +26 -34

60 lines not on this page · raw message

net/sunrpc/xprtrdma/rpc_rdma.c +2 -2
index 0287734f126f..aec0113a88b0 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/cs42l52.c +5 -3
index 0d9c4a57301b..47f2439fd7b0 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/cs42l56.c +2 -2
index a2535a7eb4bb..f9f8a9112ff8 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/cs53l30.c +8 -8
index cb47fb595ff4..5a16020423fe 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/wm8962.c +1 -0
index 0e8008d38161..d46881f96c16 100644

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Part of the diff is not shown here. View the raw message.