From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Russell King <rmk+kernel@armlinux.org.uk>,
Robert Jarzmik <robert.jarzmik@free.fr>,
"David S. Miller" <davem@davemloft.net>
Subject: [PATCH 4.7 024/184] net: smc91x: fix SMC accesses
Date: Thu, 22 Sep 2016 19:39:18 +0200 [thread overview]
Message-ID: <20160922174049.738821823@linuxfoundation.org> (raw)
In-Reply-To: <20160922174048.653794923@linuxfoundation.org>
4.7-stable review patch. If anyone has any objections, please let me know.
------------------
From: Russell King <rmk+kernel@armlinux.org.uk>
[ Upstream commit 2fb04fdf30192ff1e2b5834e9b7745889ea8bbcb ]
Commit b70661c70830 ("net: smc91x: use run-time configuration on all ARM
machines") broke some ARM platforms through several mistakes. Firstly,
the access size must correspond to the following rule:
(a) at least one of 16-bit or 8-bit access size must be supported
(b) 32-bit accesses are optional, and may be enabled in addition to
the above.
Secondly, it provides no emulation of 16-bit accesses, instead blindly
making 16-bit accesses even when the platform specifies that only 8-bit
is supported.
Reorganise smc91x.h so we can make use of the existing 16-bit access
emulation already provided - if 16-bit accesses are supported, use
16-bit accesses directly, otherwise if 8-bit accesses are supported,
use the provided 16-bit access emulation. If neither, BUG(). This
exactly reflects the driver behaviour prior to the commit being fixed.
Since the conversion incorrectly cut down the available access sizes on
several platforms, we also need to go through every platform and fix up
the overly-restrictive access size: Arnd assumed that if a platform can
perform 32-bit, 16-bit and 8-bit accesses, then only a 32-bit access
size needed to be specified - not so, all available access sizes must
be specified.
This likely fixes some performance regressions in doing this: if a
platform does not support 8-bit accesses, 8-bit accesses have been
emulated by performing a 16-bit read-modify-write access.
Tested on the Intel Assabet/Neponset platform, which supports only 8-bit
accesses, which was broken by the original commit.
Fixes: b70661c70830 ("net: smc91x: use run-time configuration on all ARM machines")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Tested-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/arm/mach-pxa/idp.c | 3 -
arch/arm/mach-pxa/xcep.c | 3 -
arch/arm/mach-realview/core.c | 3 -
arch/arm/mach-sa1100/pleb.c | 2
arch/blackfin/mach-bf561/boards/cm_bf561.c | 3 -
arch/blackfin/mach-bf561/boards/ezkit.c | 3 -
drivers/net/ethernet/smsc/smc91x.c | 7 +++
drivers/net/ethernet/smsc/smc91x.h | 65 ++++++++++++++++++++---------
include/linux/smc91x.h | 10 ++++
9 files changed, 73 insertions(+), 26 deletions(-)
--- a/arch/arm/mach-pxa/idp.c
+++ b/arch/arm/mach-pxa/idp.c
@@ -83,7 +83,8 @@ static struct resource smc91x_resources[
};
static struct smc91x_platdata smc91x_platdata = {
- .flags = SMC91X_USE_32BIT | SMC91X_USE_DMA | SMC91X_NOWAIT,
+ .flags = SMC91X_USE_8BIT | SMC91X_USE_16BIT | SMC91X_USE_32BIT |
+ SMC91X_USE_DMA | SMC91X_NOWAIT,
};
static struct platform_device smc91x_device = {
--- a/arch/arm/mach-pxa/xcep.c
+++ b/arch/arm/mach-pxa/xcep.c
@@ -120,7 +120,8 @@ static struct resource smc91x_resources[
};
static struct smc91x_platdata xcep_smc91x_info = {
- .flags = SMC91X_USE_32BIT | SMC91X_NOWAIT | SMC91X_USE_DMA,
+ .flags = SMC91X_USE_8BIT | SMC91X_USE_16BIT | SMC91X_USE_32BIT |
+ SMC91X_NOWAIT | SMC91X_USE_DMA,
};
static struct platform_device smc91x_device = {
--- a/arch/arm/mach-realview/core.c
+++ b/arch/arm/mach-realview/core.c
@@ -93,7 +93,8 @@ static struct smsc911x_platform_config s
};
static struct smc91x_platdata smc91x_platdata = {
- .flags = SMC91X_USE_32BIT | SMC91X_NOWAIT,
+ .flags = SMC91X_USE_8BIT | SMC91X_USE_16BIT | SMC91X_USE_32BIT |
+ SMC91X_NOWAIT,
};
static struct platform_device realview_eth_device = {
--- a/arch/arm/mach-sa1100/pleb.c
+++ b/arch/arm/mach-sa1100/pleb.c
@@ -45,7 +45,7 @@ static struct resource smc91x_resources[
};
static struct smc91x_platdata smc91x_platdata = {
- .flags = SMC91X_USE_16BIT | SMC91X_NOWAIT,
+ .flags = SMC91X_USE_16BIT | SMC91X_USE_8BIT | SMC91X_NOWAIT,
};
static struct platform_device smc91x_device = {
--- a/arch/blackfin/mach-bf561/boards/cm_bf561.c
+++ b/arch/blackfin/mach-bf561/boards/cm_bf561.c
@@ -146,7 +146,8 @@ static struct platform_device hitachi_fb
#include <linux/smc91x.h>
static struct smc91x_platdata smc91x_info = {
- .flags = SMC91X_USE_32BIT | SMC91X_NOWAIT,
+ .flags = SMC91X_USE_8BIT | SMC91X_USE_16BIT | SMC91X_USE_32BIT |
+ SMC91X_NOWAIT,
.leda = RPC_LED_100_10,
.ledb = RPC_LED_TX_RX,
};
--- a/arch/blackfin/mach-bf561/boards/ezkit.c
+++ b/arch/blackfin/mach-bf561/boards/ezkit.c
@@ -134,7 +134,8 @@ static struct platform_device net2272_bf
#include <linux/smc91x.h>
static struct smc91x_platdata smc91x_info = {
- .flags = SMC91X_USE_32BIT | SMC91X_NOWAIT,
+ .flags = SMC91X_USE_8BIT | SMC91X_USE_16BIT | SMC91X_USE_32BIT |
+ SMC91X_NOWAIT,
.leda = RPC_LED_100_10,
.ledb = RPC_LED_TX_RX,
};
--- a/drivers/net/ethernet/smsc/smc91x.c
+++ b/drivers/net/ethernet/smsc/smc91x.c
@@ -2269,6 +2269,13 @@ static int smc_drv_probe(struct platform
if (pd) {
memcpy(&lp->cfg, pd, sizeof(lp->cfg));
lp->io_shift = SMC91X_IO_SHIFT(lp->cfg.flags);
+
+ if (!SMC_8BIT(lp) && !SMC_16BIT(lp)) {
+ dev_err(&pdev->dev,
+ "at least one of 8-bit or 16-bit access support is required.\n");
+ ret = -ENXIO;
+ goto out_free_netdev;
+ }
}
#if IS_BUILTIN(CONFIG_OF)
--- a/drivers/net/ethernet/smsc/smc91x.h
+++ b/drivers/net/ethernet/smsc/smc91x.h
@@ -37,6 +37,27 @@
#include <linux/smc91x.h>
/*
+ * Any 16-bit access is performed with two 8-bit accesses if the hardware
+ * can't do it directly. Most registers are 16-bit so those are mandatory.
+ */
+#define SMC_outw_b(x, a, r) \
+ do { \
+ unsigned int __val16 = (x); \
+ unsigned int __reg = (r); \
+ SMC_outb(__val16, a, __reg); \
+ SMC_outb(__val16 >> 8, a, __reg + (1 << SMC_IO_SHIFT)); \
+ } while (0)
+
+#define SMC_inw_b(a, r) \
+ ({ \
+ unsigned int __val16; \
+ unsigned int __reg = r; \
+ __val16 = SMC_inb(a, __reg); \
+ __val16 |= SMC_inb(a, __reg + (1 << SMC_IO_SHIFT)) << 8; \
+ __val16; \
+ })
+
+/*
* Define your architecture specific bus configuration parameters here.
*/
@@ -55,10 +76,30 @@
#define SMC_IO_SHIFT (lp->io_shift)
#define SMC_inb(a, r) readb((a) + (r))
-#define SMC_inw(a, r) readw((a) + (r))
+#define SMC_inw(a, r) \
+ ({ \
+ unsigned int __smc_r = r; \
+ SMC_16BIT(lp) ? readw((a) + __smc_r) : \
+ SMC_8BIT(lp) ? SMC_inw_b(a, __smc_r) : \
+ ({ BUG(); 0; }); \
+ })
+
#define SMC_inl(a, r) readl((a) + (r))
#define SMC_outb(v, a, r) writeb(v, (a) + (r))
+#define SMC_outw(v, a, r) \
+ do { \
+ unsigned int __v = v, __smc_r = r; \
+ if (SMC_16BIT(lp)) \
+ __SMC_outw(__v, a, __smc_r); \
+ else if (SMC_8BIT(lp)) \
+ SMC_outw_b(__v, a, __smc_r); \
+ else \
+ BUG(); \
+ } while (0)
+
#define SMC_outl(v, a, r) writel(v, (a) + (r))
+#define SMC_insb(a, r, p, l) readsb((a) + (r), p, l)
+#define SMC_outsb(a, r, p, l) writesb((a) + (r), p, l)
#define SMC_insw(a, r, p, l) readsw((a) + (r), p, l)
#define SMC_outsw(a, r, p, l) writesw((a) + (r), p, l)
#define SMC_insl(a, r, p, l) readsl((a) + (r), p, l)
@@ -66,7 +107,7 @@
#define SMC_IRQ_FLAGS (-1) /* from resource */
/* We actually can't write halfwords properly if not word aligned */
-static inline void SMC_outw(u16 val, void __iomem *ioaddr, int reg)
+static inline void __SMC_outw(u16 val, void __iomem *ioaddr, int reg)
{
if ((machine_is_mainstone() || machine_is_stargate2() ||
machine_is_pxa_idp()) && reg & 2) {
@@ -416,24 +457,8 @@ smc_pxa_dma_insw(void __iomem *ioaddr, s
#if ! SMC_CAN_USE_16BIT
-/*
- * Any 16-bit access is performed with two 8-bit accesses if the hardware
- * can't do it directly. Most registers are 16-bit so those are mandatory.
- */
-#define SMC_outw(x, ioaddr, reg) \
- do { \
- unsigned int __val16 = (x); \
- SMC_outb( __val16, ioaddr, reg ); \
- SMC_outb( __val16 >> 8, ioaddr, reg + (1 << SMC_IO_SHIFT));\
- } while (0)
-#define SMC_inw(ioaddr, reg) \
- ({ \
- unsigned int __val16; \
- __val16 = SMC_inb( ioaddr, reg ); \
- __val16 |= SMC_inb( ioaddr, reg + (1 << SMC_IO_SHIFT)) << 8; \
- __val16; \
- })
-
+#define SMC_outw(x, ioaddr, reg) SMC_outw_b(x, ioaddr, reg)
+#define SMC_inw(ioaddr, reg) SMC_inw_b(ioaddr, reg)
#define SMC_insw(a, r, p, l) BUG()
#define SMC_outsw(a, r, p, l) BUG()
--- a/include/linux/smc91x.h
+++ b/include/linux/smc91x.h
@@ -1,6 +1,16 @@
#ifndef __SMC91X_H__
#define __SMC91X_H__
+/*
+ * These bits define which access sizes a platform can support, rather
+ * than the maximal access size. So, if your platform can do 16-bit
+ * and 32-bit accesses to the SMC91x device, but not 8-bit, set both
+ * SMC91X_USE_16BIT and SMC91X_USE_32BIT.
+ *
+ * The SMC91x driver requires at least one of SMC91X_USE_8BIT or
+ * SMC91X_USE_16BIT to be supported - just setting SMC91X_USE_32BIT is
+ * an invalid configuration.
+ */
#define SMC91X_USE_8BIT (1 << 0)
#define SMC91X_USE_16BIT (1 << 1)
#define SMC91X_USE_32BIT (1 << 2)
next prev parent reply other threads:[~2016-09-22 17:39 UTC|newest]
Thread overview: 182+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20160922174349uscas1p2c2b016dc9c367dda310785cb703014d2@uscas1p2.samsung.com>
2016-09-22 17:38 ` [PATCH 4.7 000/184] 4.7.5-stable review Greg Kroah-Hartman
2016-09-22 17:38 ` [PATCH 4.7 001/184] clocksource/drivers/sun4i: Clear interrupts after stopping timer in probe function Greg Kroah-Hartman
2016-09-22 17:38 ` [PATCH 4.7 003/184] fscrypto: require write access to mount to set encryption policy Greg Kroah-Hartman
2016-09-22 17:38 ` [PATCH 4.7 004/184] drm/msm: protect against faults from copy_from_user() in submit ioctl Greg Kroah-Hartman
2016-10-03 9:38 ` Vegard Nossum
2016-09-22 17:38 ` [PATCH 4.7 005/184] bpf: fix method of PTR_TO_PACKET reg id generation Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 006/184] ipv4: panic in leaf_walk_rcu due to stale node pointer Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 007/184] vti: flush x-netns xfrm cache when vti interface is removed Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 008/184] bpf: fix write helpers with regards to non-linear parts Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 009/184] net/irda: handle iriap_register_lsap() allocation failure Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 010/184] net/sctp: always initialise sctp_ht_iter::start_fail Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 011/184] net: ipv6: Do not keep IPv6 addresses when IPv6 is disabled Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 012/184] tipc: fix NULL pointer dereference in shutdown() Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 014/184] net/mlx5: Fix pci error recovery flow Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 015/184] net/mlx5: Added missing check of msg length in verifying its signature Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 016/184] net/mlx5e: Use correct flow dissector key on flower offloading Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 017/184] net sched: fix encoding to use real length Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 018/184] udp: fix poll() issue with zero sized packets Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 019/184] tcp: properly scale window in tcp_v[46]_reqsk_send_ack() Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 020/184] sctp: fix overrun in sctp_diag_dump_one() Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 021/184] tun: fix transmit timestamp support Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 022/184] net: dsa: bcm_sf2: Fix race condition while unmasking interrupts Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 023/184] Revert "phy: IRQ cannot be shared" Greg Kroah-Hartman
2016-09-22 17:39 ` Greg Kroah-Hartman [this message]
2016-09-22 17:39 ` [PATCH 4.7 025/184] bridge: re-introduce fix parsing of MLDv2 reports Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 026/184] kcm: fix a socket double free Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 027/184] bonding: Fix bonding crash Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 028/184] Revert "af_unix: Fix splice-bind deadlock" Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 029/184] af_unix: split u->readlock into two: iolock and bindlock Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 030/184] ipv6: release dst in ping_v6_sendmsg Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 031/184] bnxt_en: Fix TX push operation on ARM64 Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 032/184] ipv6: addrconf: fix dev refcont leak when DAD failed Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 033/184] tcp: fastopen: avoid negative sk_forward_alloc Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 034/184] net/mlx5e: Fix parsing of vlan packets when updating lro header Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 035/184] tcp: cwnd does not increase in TCP YeAH Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 036/184] powerpc/tm: do not use r13 for tabort_syscall Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 037/184] powerpc/powernv : Drop reference added by kset_find_obj() Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 038/184] powerpc: sysdev: cpm: fix gpio save_regs functions Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 039/184] powerpc/mm: Dont alias user region to other regions below PAGE_OFFSET Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 040/184] powerpc/powernv: Fix corrupted PE allocation bitmap on releasing PE Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 041/184] kernfs: dont depend on d_find_any_alias() when generating notifications Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 042/184] pNFS/flexfiles: Fix an Oopsable condition when connection to the DS fails Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 043/184] pNFS: The client must not do I/O to the DS if its lease has expired Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 044/184] NFSv4.1: Fix Oopsable condition in server callback races Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 045/184] NFSv4.x: Fix a refcount leak in nfs_callback_up_net Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 046/184] nfsd: Close race between nfsd4_release_lockowner and nfsd4_lock Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 047/184] pNFS: Ensure LAYOUTGET and LAYOUTRETURN are properly serialised Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 048/184] NFSv4.1: Fix the CREATE_SESSION slot number accounting Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 049/184] kexec: fix double-free when failing to relocate the purgatory Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 050/184] mm, oom: prevent premature OOM killer invocation for high order request Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 051/184] mm, mempolicy: task->mempolicy must be NULL before dropping final reference Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 052/184] ahci: disable correct irq for dummy ports Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 053/184] rapidio/tsi721: fix incorrect detection of address translation condition Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 054/184] mm: introduce get_task_exe_file Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 055/184] audit: fix exe_file access in audit_exe_compare Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 056/184] dm flakey: fix reads to be issued if drop_writes configured Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 057/184] IB/hfi1,IB/qib: Fix qp_stats sleep with rcu read lock held Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 058/184] IB/uverbs: Fix race between uverbs_close and remove_one Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 059/184] IB/hfi1: Reset QSFP on every run through channel tuning Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 060/184] mm: fix cache mode of dax pmd mappings Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 062/184] x86/AMD: Apply erratum 665 on machines without a BIOS fix Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 063/184] KVM: s390: dont use current->thread.fpu.* when accessing registers Greg Kroah-Hartman
2016-09-22 17:39 ` [PATCH 4.7 064/184] kvm-arm: Unmap shadow pagetables properly Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 066/184] iio: accel: kxsd9: Fix raw read return Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 067/184] iio: sw-trigger: Fix config group initialization Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 068/184] iio: proximity: as3935: set up buffer timestamps for non-zero values Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 069/184] iio: adc: rockchip_saradc: reset saradc controller before programming it Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 070/184] iio: adc: ti_am335x_adc: Protect FIFO1 from concurrent access Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 071/184] iio: adc: ti_am335x_adc: Increase timeout value waiting for ADC sample Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 072/184] iio:ti-ads1015: fix a wrong pointer definition Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 073/184] iio: ad799x: Fix buffered capture for ad7991/ad7995/ad7999 Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 074/184] iio: humidity: am2315: set up buffer timestamps for non-zero values Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 075/184] iio: adc: at91: unbreak channel adc channel 3 Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 076/184] iio: humidity: hdc100x: fix sensor data reads of temp and humidity Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 077/184] iio: accel: bmc150: reset chip at init time Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 078/184] iio: fix pressure data output unit in hid-sensor-attributes Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 079/184] iio: accel: kxsd9: Fix scaling bug Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 080/184] iio:core: fix IIO_VAL_FRACTIONAL sign handling Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 081/184] iio: ensure ret is initialized to zero before entering do loop Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 082/184] serial: 8250_mid: fix divide error bug if baud rate is 0 Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 083/184] serial: 8250: added acces i/o products quad and octal serial cards Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 084/184] USB: serial: simple: add support for another Infineon flashloader Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 085/184] usb: gadget: udc: renesas-usb3: clear VBOUT bit in DRD_CON Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 086/184] usb: renesas_usbhs: fix clearing the {BRDY,BEMP}STS condition Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 087/184] usb: chipidea: udc: fix NULL ptr dereference in isr_setup_status_phase Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 088/184] ARM: dts: STiH410: Handle interconnect clock required by EHCI/OHCI (USB) Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 089/184] USB: change bInterval default to 10 ms Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 090/184] devpts: return NULL pts priv entry for non-devpts nodes Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 091/184] cxl: use pcibios_free_controller_deferred() when removing vPHBs Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 092/184] net: thunderx: Fix OOPs with ethtool --register-dump Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 093/184] net: macb: Correct CAPS mask Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 094/184] cpuset: make sure new tasks conform to the current config of the cpuset Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 095/184] arm: dts: rockchip: add reset node for the exist saradc SoCs Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 096/184] ARM: AM43XX: hwmod: Fix RSTST register offset for pruss Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 097/184] ARM: imx6: add missing BM_CLPCR_BYP_MMDC_CH0_LPM_HS setting for imx6ul Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 098/184] ARM: imx6: add missing BM_CLPCR_BYPASS_PMIC_READY setting for imx6sx Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 099/184] ARM: kirkwood: ib62x0: fix size of u-boot environment partition Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 100/184] ARM: OMAP3: hwmod data: Add sysc information for DSI Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 101/184] ARM: dts: kirkwood: Fix PCIe label on OpenRD Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 102/184] ARM: dts: imx6qdl: Fix SPDIF regression Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 103/184] ARM: dts: armada-388-clearfog: number LAN ports properly Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 104/184] ARM: dts: overo: fix gpmc nand cs0 range Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 105/184] ARM: dts: overo: fix gpmc nand on boards with ethernet Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 106/184] ARM: dts: STiH407-family: Provide interconnect clock for consumption in ST SDHCI Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 107/184] bus: arm-ccn: Fix PMU handling of MN Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 108/184] bus: arm-ccn: Do not attempt to configure XPs for cycle counter Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 109/184] bus: arm-ccn: Fix XP watchpoint settings bitmask Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 110/184] dm log writes: fix check of kthread_run() return value Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 111/184] dm crypt: fix free of bad values after tfm allocation failure Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 112/184] dm log writes: move IO accounting earlier to fix error path Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 113/184] dm crypt: fix error with too large bios Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 114/184] pinctrl: pistachio: fix mfio pll_lock pinmux Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 115/184] pinctrl: sunxi: fix uart1 CTS/RTS pins at PG on A23/A33 Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 116/184] memory: omap-gpmc: allow probe of child nodes to fail Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 117/184] arm64: spinlocks: implement smp_mb__before_spinlock() as smp_mb() Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 118/184] crypto: cryptd - initialize child shash_desc on import Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 119/184] Btrfs: remove root_log_ctx from ctx list before btrfs_sync_log returns Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 120/184] fuse: direct-io: dont dirty ITER_BVEC pages Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 121/184] xhci: fix null pointer dereference in stop command timeout function Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 122/184] brcmfmac: avoid potential stack overflow in brcmf_cfg80211_start_ap() Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 123/184] md-cluster: make md-cluster also can work when compiled into kernel Greg Kroah-Hartman
2016-09-22 17:40 ` [PATCH 4.7 124/184] ath9k: fix using sta->drv_priv before initializing it Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 126/184] perf/x86/intel: Fix PEBSv3 record drain Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 127/184] perf/x86/intel/cqm: Check cqm/mbm enabled state in event init Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 128/184] perf/x86/amd: Make HW_CACHE_REFERENCES and HW_CACHE_MISSES measure L2 Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 129/184] perf/x86/intel/pt: Fix an off-by-one in address filter configuration Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 130/184] perf/x86/intel/pt: Fix kernel address filters offset validation Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 131/184] perf/x86/intel/pt: Do validate the size of a kernel address filter Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 132/184] Revert "wext: Fix 32 bit iwpriv compatibility issue with 64 bit Kernel" Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 133/184] sched/core: Fix a race between try_to_wake_up() and a woken up task Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 134/184] ipv6: Dont unset flowi6_proto in ipxip6_tnl_xmit() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 135/184] efi: Make for_each_efi_memory_desc_in_map() cope with running on Xen Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 136/184] efi/libstub: Allocate headspace in efi_get_memory_map() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 137/184] efi/libstub: Introduce ExitBootServices helper Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 138/184] efi/libstub: Use efi_exit_boot_services() in FDT Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 139/184] x86/efi: Use efi_exit_boot_services() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 140/184] powerpc/32: Fix csum_partial_copy_generic() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 141/184] powerpc/32: Fix again csum_partial_copy_generic() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 143/184] kconfig: tinyconfig: provide whole choice blocks to avoid warnings Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 144/184] drm: atmel-hlcdc: Fix vertical scaling Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 146/184] drm: Only use compat ioctl for addfb2 on X86/IA64 Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 147/184] svcauth_gss: Revert 64c59a3726f2 ("Remove unnecessary allocation") Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 148/184] mmc: sdhci-st: Handle interconnect clock Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 149/184] genirq: Provide irq_gc_{lock_irqsave,unlock_irqrestore}() helpers Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 150/184] irqchip/atmel-aic: Fix potential deadlock in ->xlate() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 151/184] fix iov_iter_fault_in_readable() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 152/184] microblaze: fix __get_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 153/184] avr32: fix copy_from_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 154/184] microblaze: " Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 155/184] fix minor infoleak in get_user_ex() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 156/184] mn10300: failing __get_user() and get_user() should zero Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 157/184] m32r: fix __get_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 158/184] sh64: failing __get_user() should zero Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 159/184] nios2: fix __get_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 160/184] score: fix __get_user/get_user Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 161/184] s390: get_user() should zero on failure Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 162/184] ARC: uaccess: get_user to zero out dest in cause of fault Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 163/184] asm-generic: make get_user() clear the destination on errors Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 164/184] frv: fix clear_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 165/184] cris: buggered copy_from_user/copy_to_user/clear_user Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 166/184] blackfin: fix copy_from_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 167/184] score: fix copy_from_user() and friends Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 168/184] sh: fix copy_from_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 169/184] sh: cmpxchg: fix a bit shift bug in big_endian os Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 170/184] hexagon: fix strncpy_from_user() error return Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 171/184] mips: copy_from_user() must zero the destination on access_ok() failure Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 172/184] asm-generic: make copy_from_user() zero the destination properly Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 173/184] alpha: fix copy_from_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 174/184] metag: copy_from_user() should zero the destination on access_ok() failure Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 175/184] parisc: fix copy_from_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 176/184] openrisc: " Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 177/184] nios2: copy_from_user() should zero the tail of destination Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 178/184] mn10300: copy_from_user() should zero on access_ok() failure Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 179/184] sparc32: fix copy_from_user() Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 180/184] ppc32: " Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 181/184] ia64: copy_from_user() should zero the destination on access_ok() failure Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 182/184] iwlegacy: avoid warning about missing braces Greg Kroah-Hartman
2016-09-22 17:41 ` [PATCH 4.7 183/184] genirq/msi: Fix broken debug output Greg Kroah-Hartman
2016-09-22 23:44 ` [PATCH 4.7 000/184] 4.7.5-stable review Guenter Roeck
2016-09-23 8:15 ` Greg Kroah-Hartman
2016-09-23 16:03 ` Shuah Khan
2016-09-23 16:15 ` Greg Kroah-Hartman
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=20160922174049.738821823@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=rmk+kernel@armlinux.org.uk \
--cc=robert.jarzmik@free.fr \
--cc=stable@vger.kernel.org \
/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).