stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: "Eric Biggers" <ebiggers@google.com>,
	"Stephan Müller" <smueller@chronox.de>,
	"Theodore Ts'o" <tytso@mit.edu>,
	"Herbert Xu" <herbert@gondor.apana.org.au>,
	"Sasha Levin" <sashal@kernel.org>,
	linux-crypto@vger.kernel.org
Subject: [PATCH AUTOSEL 4.19 070/191] crypto: chacha20 - Fix chacha20_block() keystream alignment (again)
Date: Sat,  9 Nov 2019 21:38:12 -0500	[thread overview]
Message-ID: <20191110024013.29782-70-sashal@kernel.org> (raw)
In-Reply-To: <20191110024013.29782-1-sashal@kernel.org>

From: Eric Biggers <ebiggers@google.com>

[ Upstream commit a5e9f557098e54af44ade5d501379be18435bfbf ]

In commit 9f480faec58c ("crypto: chacha20 - Fix keystream alignment for
chacha20_block()"), I had missed that chacha20_block() can be called
directly on the buffer passed to get_random_bytes(), which can have any
alignment.  So, while my commit didn't break anything, it didn't fully
solve the alignment problems.

Revert my solution and just update chacha20_block() to use
put_unaligned_le32(), so the output buffer need not be aligned.
This is simpler, and on many CPUs it's the same speed.

But, I kept the 'tmp' buffers in extract_crng_user() and
_get_random_bytes() 4-byte aligned, since that alignment is actually
needed for _crng_backtrack_protect() too.

Reported-by: Stephan Müller <smueller@chronox.de>
Cc: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 crypto/chacha20_generic.c |  7 ++++---
 drivers/char/random.c     | 24 ++++++++++++------------
 include/crypto/chacha20.h |  3 +--
 lib/chacha20.c            |  6 +++---
 4 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/crypto/chacha20_generic.c b/crypto/chacha20_generic.c
index e451c3cb6a56e..3ae96587caf9a 100644
--- a/crypto/chacha20_generic.c
+++ b/crypto/chacha20_generic.c
@@ -18,20 +18,21 @@
 static void chacha20_docrypt(u32 *state, u8 *dst, const u8 *src,
 			     unsigned int bytes)
 {
-	u32 stream[CHACHA20_BLOCK_WORDS];
+	/* aligned to potentially speed up crypto_xor() */
+	u8 stream[CHACHA20_BLOCK_SIZE] __aligned(sizeof(long));
 
 	if (dst != src)
 		memcpy(dst, src, bytes);
 
 	while (bytes >= CHACHA20_BLOCK_SIZE) {
 		chacha20_block(state, stream);
-		crypto_xor(dst, (const u8 *)stream, CHACHA20_BLOCK_SIZE);
+		crypto_xor(dst, stream, CHACHA20_BLOCK_SIZE);
 		bytes -= CHACHA20_BLOCK_SIZE;
 		dst += CHACHA20_BLOCK_SIZE;
 	}
 	if (bytes) {
 		chacha20_block(state, stream);
-		crypto_xor(dst, (const u8 *)stream, bytes);
+		crypto_xor(dst, stream, bytes);
 	}
 }
 
diff --git a/drivers/char/random.c b/drivers/char/random.c
index 0a84b7f468ad0..86fe1df902393 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -433,9 +433,9 @@ static int crng_init_cnt = 0;
 static unsigned long crng_global_init_time = 0;
 #define CRNG_INIT_CNT_THRESH (2*CHACHA20_KEY_SIZE)
 static void _extract_crng(struct crng_state *crng,
-			  __u32 out[CHACHA20_BLOCK_WORDS]);
+			  __u8 out[CHACHA20_BLOCK_SIZE]);
 static void _crng_backtrack_protect(struct crng_state *crng,
-				    __u32 tmp[CHACHA20_BLOCK_WORDS], int used);
+				    __u8 tmp[CHACHA20_BLOCK_SIZE], int used);
 static void process_random_ready_list(void);
 static void _get_random_bytes(void *buf, int nbytes);
 
@@ -929,7 +929,7 @@ static void crng_reseed(struct crng_state *crng, struct entropy_store *r)
 	unsigned long	flags;
 	int		i, num;
 	union {
-		__u32	block[CHACHA20_BLOCK_WORDS];
+		__u8	block[CHACHA20_BLOCK_SIZE];
 		__u32	key[8];
 	} buf;
 
@@ -976,7 +976,7 @@ static void crng_reseed(struct crng_state *crng, struct entropy_store *r)
 }
 
 static void _extract_crng(struct crng_state *crng,
-			  __u32 out[CHACHA20_BLOCK_WORDS])
+			  __u8 out[CHACHA20_BLOCK_SIZE])
 {
 	unsigned long v, flags;
 
@@ -993,7 +993,7 @@ static void _extract_crng(struct crng_state *crng,
 	spin_unlock_irqrestore(&crng->lock, flags);
 }
 
-static void extract_crng(__u32 out[CHACHA20_BLOCK_WORDS])
+static void extract_crng(__u8 out[CHACHA20_BLOCK_SIZE])
 {
 	struct crng_state *crng = NULL;
 
@@ -1011,7 +1011,7 @@ static void extract_crng(__u32 out[CHACHA20_BLOCK_WORDS])
  * enough) to mutate the CRNG key to provide backtracking protection.
  */
 static void _crng_backtrack_protect(struct crng_state *crng,
-				    __u32 tmp[CHACHA20_BLOCK_WORDS], int used)
+				    __u8 tmp[CHACHA20_BLOCK_SIZE], int used)
 {
 	unsigned long	flags;
 	__u32		*s, *d;
@@ -1023,14 +1023,14 @@ static void _crng_backtrack_protect(struct crng_state *crng,
 		used = 0;
 	}
 	spin_lock_irqsave(&crng->lock, flags);
-	s = &tmp[used / sizeof(__u32)];
+	s = (__u32 *) &tmp[used];
 	d = &crng->state[4];
 	for (i=0; i < 8; i++)
 		*d++ ^= *s++;
 	spin_unlock_irqrestore(&crng->lock, flags);
 }
 
-static void crng_backtrack_protect(__u32 tmp[CHACHA20_BLOCK_WORDS], int used)
+static void crng_backtrack_protect(__u8 tmp[CHACHA20_BLOCK_SIZE], int used)
 {
 	struct crng_state *crng = NULL;
 
@@ -1046,7 +1046,7 @@ static void crng_backtrack_protect(__u32 tmp[CHACHA20_BLOCK_WORDS], int used)
 static ssize_t extract_crng_user(void __user *buf, size_t nbytes)
 {
 	ssize_t ret = 0, i = CHACHA20_BLOCK_SIZE;
-	__u32 tmp[CHACHA20_BLOCK_WORDS];
+	__u8 tmp[CHACHA20_BLOCK_SIZE] __aligned(4);
 	int large_request = (nbytes > 256);
 
 	while (nbytes) {
@@ -1625,7 +1625,7 @@ static void _warn_unseeded_randomness(const char *func_name, void *caller,
  */
 static void _get_random_bytes(void *buf, int nbytes)
 {
-	__u32 tmp[CHACHA20_BLOCK_WORDS];
+	__u8 tmp[CHACHA20_BLOCK_SIZE] __aligned(4);
 
 	trace_get_random_bytes(nbytes, _RET_IP_);
 
@@ -2251,7 +2251,7 @@ u64 get_random_u64(void)
 	batch = raw_cpu_ptr(&batched_entropy_u64);
 	spin_lock_irqsave(&batch->batch_lock, flags);
 	if (batch->position % ARRAY_SIZE(batch->entropy_u64) == 0) {
-		extract_crng((__u32 *)batch->entropy_u64);
+		extract_crng((u8 *)batch->entropy_u64);
 		batch->position = 0;
 	}
 	ret = batch->entropy_u64[batch->position++];
@@ -2278,7 +2278,7 @@ u32 get_random_u32(void)
 	batch = raw_cpu_ptr(&batched_entropy_u32);
 	spin_lock_irqsave(&batch->batch_lock, flags);
 	if (batch->position % ARRAY_SIZE(batch->entropy_u32) == 0) {
-		extract_crng(batch->entropy_u32);
+		extract_crng((u8 *)batch->entropy_u32);
 		batch->position = 0;
 	}
 	ret = batch->entropy_u32[batch->position++];
diff --git a/include/crypto/chacha20.h b/include/crypto/chacha20.h
index b83d66073db03..f76302d99e2be 100644
--- a/include/crypto/chacha20.h
+++ b/include/crypto/chacha20.h
@@ -13,13 +13,12 @@
 #define CHACHA20_IV_SIZE	16
 #define CHACHA20_KEY_SIZE	32
 #define CHACHA20_BLOCK_SIZE	64
-#define CHACHA20_BLOCK_WORDS	(CHACHA20_BLOCK_SIZE / sizeof(u32))
 
 struct chacha20_ctx {
 	u32 key[8];
 };
 
-void chacha20_block(u32 *state, u32 *stream);
+void chacha20_block(u32 *state, u8 *stream);
 void crypto_chacha20_init(u32 *state, struct chacha20_ctx *ctx, u8 *iv);
 int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key,
 			   unsigned int keysize);
diff --git a/lib/chacha20.c b/lib/chacha20.c
index c1cc50fb68c9f..d907fec6a9ed1 100644
--- a/lib/chacha20.c
+++ b/lib/chacha20.c
@@ -16,9 +16,9 @@
 #include <asm/unaligned.h>
 #include <crypto/chacha20.h>
 
-void chacha20_block(u32 *state, u32 *stream)
+void chacha20_block(u32 *state, u8 *stream)
 {
-	u32 x[16], *out = stream;
+	u32 x[16];
 	int i;
 
 	for (i = 0; i < ARRAY_SIZE(x); i++)
@@ -67,7 +67,7 @@ void chacha20_block(u32 *state, u32 *stream)
 	}
 
 	for (i = 0; i < ARRAY_SIZE(x); i++)
-		out[i] = cpu_to_le32(x[i] + state[i]);
+		put_unaligned_le32(x[i] + state[i], &stream[i * sizeof(u32)]);
 
 	state[12]++;
 }
-- 
2.20.1


  parent reply	other threads:[~2019-11-10  3:13 UTC|newest]

Thread overview: 199+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-10  2:37 [PATCH AUTOSEL 4.19 001/191] s390/qeth: uninstall IRQ handler on device removal Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 002/191] s390/qeth: invoke softirqs after napi_schedule() Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 003/191] media: vsp1: Fix vsp1_regs.h license header Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 004/191] media: vsp1: Fix YCbCr planar formats pitch calculation Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 005/191] media: ov2680: don't register the v4l2 subdevice before checking chip ID Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 006/191] PCI/ACPI: Correct error message for ASPM disabling Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 007/191] net: socionext: Fix two sleep-in-atomic-context bugs in ave_rxfifo_reset() Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 008/191] PCI: mediatek: Fix unchecked return value Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 009/191] ARM: dts: xilinx: Fix I2C and SPI bus warnings Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 010/191] serial: uartps: Fix suspend functionality Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 011/191] serial: samsung: Enable baud clock for UART reset procedure in resume Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 012/191] serial: mxs-auart: Fix potential infinite loop Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 013/191] tty: serial: qcom_geni_serial: Fix serial when not used as console Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 014/191] arm64: dts: ti: k3-am65: Change #address-cells and #size-cells of interconnect to 2 Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 015/191] samples/bpf: fix a compilation failure Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 016/191] spi/bcm63xx-hsspi: keep pll clk enabled Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 017/191] spi: mediatek: Don't modify spi_transfer when transfer Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 018/191] ASoC: rt5682: Fix the boost volume at the begining of playback Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 019/191] ipmi_si_pci: fix NULL device in ipmi_si error message Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 020/191] ipmi_si: fix potential integer overflow on large shift Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 021/191] ipmi:dmi: Ignore IPMI SMBIOS entries with a zero base address Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 022/191] ipmi: fix return value of ipmi_set_my_LUN Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 023/191] net: hns3: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 024/191] net: cavium: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 025/191] net: ibm: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 026/191] powerpc/iommu: Avoid derefence before pointer check Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 027/191] selftests/powerpc: Do not fail with reschedule Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 028/191] powerpc/64s/hash: Fix stab_rr off by one initialization Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 029/191] powerpc/pseries/memory-hotplug: Only update DT once per memory DLPAR request Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 030/191] powerpc/pseries: Disable CPU hotplug across migrations Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 031/191] powerpc: Fix duplicate const clang warning in user access code Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 032/191] RDMA/i40iw: Fix incorrect iterator type Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 033/191] ARM: dts: atmel: Fix I2C and SPI bus warnings Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 034/191] OPP: Protect dev_list with opp_table lock Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 035/191] of/unittest: Fix I2C bus unit-address error Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 036/191] libfdt: Ensure INT_MAX is defined in libfdt_env.h Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 037/191] power: supply: twl4030_charger: fix charging current out-of-bounds Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 038/191] power: supply: twl4030_charger: disable eoc interrupt on linear charge Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 039/191] net: mvpp2: fix the number of queues per cpu for PPv2.2 Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 040/191] net: marvell: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 041/191] net: toshiba: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 042/191] net: xilinx: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 043/191] net: broadcom: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 044/191] net: amd: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 045/191] net: sun: " Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 046/191] net: hns3: Fix for setting speed for phy failed problem Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 047/191] net: hns3: Fix cmdq registers initialization issue for vf Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 048/191] net: hns3: Clear client pointer when initialize client failed or unintialize finished Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 049/191] net: hns3: Fix client initialize state issue when roce client initialize failed Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 050/191] net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 051/191] nfp: provide a better warning when ring allocation fails Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 052/191] usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 053/191] usb: chipidea: Fix otg event handler Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 054/191] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_OUT Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 055/191] s390/zcrypt: enable AP bus scan without a valid default domain Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 056/191] s390/vdso: avoid 64-bit vdso mapping for compat tasks Sasha Levin
2019-11-10  2:37 ` [PATCH AUTOSEL 4.19 057/191] s390/vdso: correct CFI annotations of vDSO functions Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 058/191] brcmfmac: increase buffer for obtaining firmware capabilities Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 059/191] brcmsmac: Use kvmalloc() for ucode allocations Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 060/191] mlxsw: spectrum: Init shaper for TCs 8..15 Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 061/191] PCI: portdrv: Initialize service drivers directly Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 062/191] ARM: dts: am335x-evm: fix number of cpsw Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 063/191] ARM: dts: ti: Fix SPI and I2C bus warnings Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 064/191] f2fs: avoid infinite loop in f2fs_alloc_nid Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 065/191] f2fs: fix to recover inode's uid/gid during POR Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 066/191] ARM: dts: ux500: Correct SCU unit address Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 067/191] ARM: dts: ux500: Fix LCDA clock line muxing Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 068/191] ARM: dts: ste: Fix SPI controller node names Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 069/191] spi: pic32: Use proper enum in dmaengine_prep_slave_rg Sasha Levin
2019-11-10  2:38 ` Sasha Levin [this message]
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 071/191] cpufeature: avoid warning when compiling with clang Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 072/191] crypto: arm/crc32 - avoid warning when compiling with Clang Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 073/191] ARM: dts: marvell: Fix SPI and I2C bus warnings Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 074/191] x86/mce-inject: Reset injection struct after injection Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 075/191] ARM: dts: stm32: enable display on stm32mp157c-ev1 board Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 076/191] ARM: dts: clearfog: fix sdhci supply property name Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 077/191] ARM: dts: stm32: Fix SPI controller node names Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 078/191] bnx2x: Ignore bandwidth attention in single function mode Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 079/191] PCI/AER: Take reference on error devices Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 080/191] PCI/AER: Don't read upstream ports below fatal errors Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 081/191] PCI/ERR: Use slot reset if available Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 082/191] samples/bpf: fix compilation failure Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 083/191] net: phy: mdio-bcm-unimac: Allow configuring MDIO clock divider Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 084/191] net: micrel: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 085/191] net: freescale: " Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 086/191] x86/CPU: Use correct macros for Cyrix calls Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 087/191] x86/CPU: Change query logic so CPUID is enabled before testing Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 088/191] EDAC: Correct DIMM capacity unit symbol Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 089/191] MIPS: kexec: Relax memory restriction Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 090/191] arm64: dts: rockchip: Fix microSD in rk3399 sapphire board Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 091/191] mlxsw: Make MLXSW_SP1_FWREV_MINOR a hard requirement Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 092/191] media: imx: work around false-positive warning, again Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 093/191] media: pci: ivtv: Fix a sleep-in-atomic-context bug in ivtv_yuv_init() Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 094/191] media: au0828: Fix incorrect error messages Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 095/191] media: davinci: Fix implicit enum conversion warning Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 096/191] ARM: dts: rockchip: explicitly set vcc_sd0 pin to gpio on rk3188-radxarock Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 097/191] usb: gadget: uvc: configfs: Drop leaked references to config items Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 098/191] usb: gadget: uvc: configfs: Prevent format changes after linking header Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 099/191] usb: gadget: uvc: configfs: Sort frame intervals upon writing Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 100/191] ARM: dts: exynos: Correct audio subsystem parent clock on Peach Chromebooks Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 101/191] i2c: aspeed: fix invalid clock parameters for very large divisors Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 102/191] gpiolib: Fix gpio_direction_* for single direction GPIOs Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 103/191] ARM: at91: pm: call put_device instead of of_node_put in at91_pm_config_ws Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 104/191] phy: brcm-sata: allow PHY_BRCM_SATA driver to be built for DSL SoCs Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 105/191] phy: renesas: rcar-gen3-usb2: fix vbus_ctrl for role sysfs Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 106/191] phy: phy-twl4030-usb: fix denied runtime access Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 107/191] ARM: dts: imx6ull: update vdd_soc voltage for 900MHz operating point Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 108/191] usb: gadget: uvc: Factor out video USB request queueing Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 109/191] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 110/191] coresight: Use ERR_CAST instead of ERR_PTR Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 111/191] coresight: Fix handling of sinks Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 112/191] coresight: perf: Fix per cpu path management Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 113/191] coresight: perf: Disable trace path upon source error Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 114/191] coresight: tmc-etr: Handle driver mode specific ETR buffers Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 115/191] coresight: etm4x: Configure EL2 exception level when kernel is running in HYP Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 116/191] coresight: tmc: Fix byte-address alignment for RRP Sasha Levin
2019-11-10  2:38 ` [PATCH AUTOSEL 4.19 117/191] coresight: dynamic-replicator: Handle multiple connections Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 118/191] slimbus: ngd: register ngd driver only once Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 119/191] slimbus: ngd: return proper error code instead of zero Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 120/191] silmbus: ngd: register controller after power up Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 121/191] misc: kgdbts: Fix restrict error Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 122/191] misc: genwqe: should return proper error value Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 123/191] vmbus: keep pointer to ring buffer page Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 124/191] vfio/pci: Fix potential memory leak in vfio_msi_cap_len Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 125/191] vfio/pci: Mask buggy SR-IOV VF INTx support Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 126/191] iw_cxgb4: Use proper enumerated type in c4iw_bar2_addrs Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 127/191] scsi: libsas: always unregister the old device if going to discover new Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 128/191] f2fs: fix remount problem of option io_bits Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 129/191] phy: lantiq: Fix compile warning Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 130/191] ARM: dts: meson8b: odroidc1: enable the SAR ADC Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 131/191] arm64: dts: fsl: Fix I2C and SPI bus warnings Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 132/191] ARM: dts: imx51-zii-rdu1: Fix the rtc compatible string Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 133/191] efi: honour memory reservations passed via a linux specific config table Sasha Levin
2019-11-10  7:33   ` Ard Biesheuvel
2019-11-10 13:27     ` Sasha Levin
2019-11-10 14:16       ` Ard Biesheuvel
2019-11-10 15:56         ` Sasha Levin
2019-11-10 16:26           ` Ard Biesheuvel
2019-11-10 18:08             ` Marc Zyngier
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 134/191] efi: Make efi_rts_work accessible to efi page fault handler Sasha Levin
2019-11-10  7:35   ` Ard Biesheuvel
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 135/191] efi/x86: Handle page faults occurring while running EFI runtime services Sasha Levin
2019-11-10  7:40   ` Ard Biesheuvel
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 136/191] arm64: tegra: I2C on Tegra194 is not compatible with Tegra114 Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 137/191] ARM: dts: tegra30: fix xcvr-setup-use-fuses Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 138/191] ARM: dts: tegra20: restore address order Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 139/191] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 140/191] ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 141/191] ARM: tegra: colibri_t30: " Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 142/191] ARM: dts: paz00: fix wakeup gpio keycode Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 143/191] net: smsc: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 144/191] net: faraday: " Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 145/191] PCI/ERR: Run error recovery callbacks for all affected devices Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 146/191] f2fs: update i_size after DIO completion Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 147/191] f2fs: fix to recover inode's project id during POR Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 148/191] f2fs: mark inode dirty explicitly in recover_inode() Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 149/191] RDMA: Fix dependencies for rdma_user_mmap_io Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 150/191] EDAC: Raise the maximum number of memory controllers Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 151/191] ARM: dts: realview: Fix SPI controller node names Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 152/191] firmware: dell_rbu: Make payload memory uncachable Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 153/191] Bluetooth: hci_serdev: clear HCI_UART_PROTO_READY to avoid closing proto races Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 154/191] Bluetooth: L2CAP: Detect if remote is not able to use the whole MPS Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 155/191] Bluetooth: btrsi: fix bt tx timeout issue Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 156/191] x86/hyperv: Suppress "PCI: Fatal: No config space access function found" Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 157/191] crypto: s5p-sss: Fix race in error handling Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 158/191] crypto: s5p-sss: Fix Fix argument list alignment Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 159/191] crypto: fix a memory leak in rsa-kcs1pad's encryption mode Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 160/191] iwlwifi: dbg: don't crash if the firmware crashes in the middle of a debug dump Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 161/191] iwlwifi: fix non_shared_ant for 22000 devices Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 162/191] iwlwifi: pcie: read correct prph address for newer devices Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 163/191] iwlwifi: api: annotate compressed BA notif array sizes Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 164/191] iwlwifi: pcie: gen2: build A-MSDU only for GSO Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 165/191] iwlwifi: pcie: fit reclaim msg to MAX_MSG_LEN Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 166/191] iwlwifi: mvm: use correct FIFO length Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 167/191] iwlwifi: mvm: Allow TKIP for AP mode Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 168/191] scsi: NCR5380: Clear all unissued commands on host reset Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 169/191] scsi: NCR5380: Have NCR5380_select() return a bool Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 170/191] scsi: NCR5380: Withhold disconnect privilege for REQUEST SENSE Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 171/191] scsi: NCR5380: Use DRIVER_SENSE to indicate valid sense data Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 172/191] scsi: NCR5380: Check for invalid reselection target Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 173/191] scsi: NCR5380: Don't clear busy flag when abort fails Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 174/191] scsi: NCR5380: Don't call dsprintk() following reselection interrupt Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 175/191] scsi: NCR5380: Handle BUS FREE during reselection Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 176/191] scsi: NCR5380: Check for bus reset Sasha Levin
2019-11-10  2:39 ` [PATCH AUTOSEL 4.19 177/191] arm64: dts: amd: Fix SPI bus warnings Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 178/191] arm64: dts: lg: Fix SPI controller node names Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 179/191] ARM: dts: lpc32xx: " Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 180/191] rtc: isl1208: avoid possible sysfs race Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 181/191] rtc: tx4939: fixup nvmem name and register size Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 182/191] rtc: armada38x: fix possible race condition Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 183/191] netfilter: masquerade: don't flush all conntracks if only one address deleted on device Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 184/191] usb: xhci-mtk: fix ISOC error when interval is zero Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 185/191] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_clear Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 186/191] fuse: use READ_ONCE on congestion_threshold and max_background Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 187/191] IB/iser: Fix possible NULL deref at iser_inv_desc() Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 188/191] media: ov2680: fix null dereference at power on Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 189/191] s390/vdso: correct vdso mapping for compat tasks Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 190/191] net: phy: mdio-bcm-unimac: mark PM functions as __maybe_unused Sasha Levin
2019-11-10  2:40 ` [PATCH AUTOSEL 4.19 191/191] x86/efi: fix a -Wtype-limits compilation warning Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191110024013.29782-70-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=ebiggers@google.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=smueller@chronox.de \
    --cc=stable@vger.kernel.org \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).