From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Peng Li <lipeng321@huawei.com>,
"David S. Miller" <davem@davemloft.net>,
Sasha Levin <alexander.levin@microsoft.com>
Subject: [PATCH 4.18 032/168] net: hns: add the code for cleaning pkt in chip
Date: Mon, 8 Oct 2018 20:30:12 +0200 [thread overview]
Message-ID: <20181008175621.268395199@linuxfoundation.org> (raw)
In-Reply-To: <20181008175620.043587728@linuxfoundation.org>
4.18-stable review patch. If anyone has any objections, please let me know.
------------------
From: Peng Li <lipeng321@huawei.com>
[ Upstream commit 31fabbee8f5c658c3fa1603c66e9e4f51ea8c2c6 ]
If there are packets in hardware when changing the speed
or duplex, it may cause hardware hang up.
This patch adds the code for waiting chip to clean the all
pkts(TX & RX) in chip when the driver uses the function named
"adjust link".
This patch cleans the pkts as follows:
1) close rx of chip, close tx of protocol stack.
2) wait rcb, ppe, mac to clean.
3) adjust link
4) open rx of chip, open tx of protocol stack.
Signed-off-by: Peng Li <lipeng321@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/net/ethernet/hisilicon/hns/hnae.h | 2
drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c | 67 ++++++++++++++++++++-
drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c | 36 +++++++++++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c | 44 +++++++++++++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.h | 8 ++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c | 29 +++++++++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h | 3
drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c | 23 +++++++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.h | 1
drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.c | 23 +++++++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.h | 1
drivers/net/ethernet/hisilicon/hns/hns_dsaf_reg.h | 1
drivers/net/ethernet/hisilicon/hns/hns_enet.c | 21 +++++-
13 files changed, 255 insertions(+), 4 deletions(-)
--- a/drivers/net/ethernet/hisilicon/hns/hnae.h
+++ b/drivers/net/ethernet/hisilicon/hns/hnae.h
@@ -486,6 +486,8 @@ struct hnae_ae_ops {
u8 *auto_neg, u16 *speed, u8 *duplex);
void (*toggle_ring_irq)(struct hnae_ring *ring, u32 val);
void (*adjust_link)(struct hnae_handle *handle, int speed, int duplex);
+ bool (*need_adjust_link)(struct hnae_handle *handle,
+ int speed, int duplex);
int (*set_loopback)(struct hnae_handle *handle,
enum hnae_loop loop_mode, int en);
void (*get_ring_bdnum_limit)(struct hnae_queue *queue,
--- a/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c
@@ -155,6 +155,41 @@ static void hns_ae_put_handle(struct hna
hns_ae_get_ring_pair(handle->qs[i])->used_by_vf = 0;
}
+static int hns_ae_wait_flow_down(struct hnae_handle *handle)
+{
+ struct dsaf_device *dsaf_dev;
+ struct hns_ppe_cb *ppe_cb;
+ struct hnae_vf_cb *vf_cb;
+ int ret;
+ int i;
+
+ for (i = 0; i < handle->q_num; i++) {
+ ret = hns_rcb_wait_tx_ring_clean(handle->qs[i]);
+ if (ret)
+ return ret;
+ }
+
+ ppe_cb = hns_get_ppe_cb(handle);
+ ret = hns_ppe_wait_tx_fifo_clean(ppe_cb);
+ if (ret)
+ return ret;
+
+ dsaf_dev = hns_ae_get_dsaf_dev(handle->dev);
+ if (!dsaf_dev)
+ return -EINVAL;
+ ret = hns_dsaf_wait_pkt_clean(dsaf_dev, handle->dport_id);
+ if (ret)
+ return ret;
+
+ vf_cb = hns_ae_get_vf_cb(handle);
+ ret = hns_mac_wait_fifo_clean(vf_cb->mac_cb);
+ if (ret)
+ return ret;
+
+ mdelay(10);
+ return 0;
+}
+
static void hns_ae_ring_enable_all(struct hnae_handle *handle, int val)
{
int q_num = handle->q_num;
@@ -399,12 +434,41 @@ static int hns_ae_get_mac_info(struct hn
return hns_mac_get_port_info(mac_cb, auto_neg, speed, duplex);
}
+static bool hns_ae_need_adjust_link(struct hnae_handle *handle, int speed,
+ int duplex)
+{
+ struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle);
+
+ return hns_mac_need_adjust_link(mac_cb, speed, duplex);
+}
+
static void hns_ae_adjust_link(struct hnae_handle *handle, int speed,
int duplex)
{
struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle);
- hns_mac_adjust_link(mac_cb, speed, duplex);
+ switch (mac_cb->dsaf_dev->dsaf_ver) {
+ case AE_VERSION_1:
+ hns_mac_adjust_link(mac_cb, speed, duplex);
+ break;
+
+ case AE_VERSION_2:
+ /* chip need to clear all pkt inside */
+ hns_mac_disable(mac_cb, MAC_COMM_MODE_RX);
+ if (hns_ae_wait_flow_down(handle)) {
+ hns_mac_enable(mac_cb, MAC_COMM_MODE_RX);
+ break;
+ }
+
+ hns_mac_adjust_link(mac_cb, speed, duplex);
+ hns_mac_enable(mac_cb, MAC_COMM_MODE_RX);
+ break;
+
+ default:
+ break;
+ }
+
+ return;
}
static void hns_ae_get_ring_bdnum_limit(struct hnae_queue *queue,
@@ -902,6 +966,7 @@ static struct hnae_ae_ops hns_dsaf_ops =
.get_status = hns_ae_get_link_status,
.get_info = hns_ae_get_mac_info,
.adjust_link = hns_ae_adjust_link,
+ .need_adjust_link = hns_ae_need_adjust_link,
.set_loopback = hns_ae_config_loopback,
.get_ring_bdnum_limit = hns_ae_get_ring_bdnum_limit,
.get_pauseparam = hns_ae_get_pauseparam,
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c
@@ -257,6 +257,16 @@ static void hns_gmac_get_pausefrm_cfg(vo
*tx_pause_en = dsaf_get_bit(pause_en, GMAC_PAUSE_EN_TX_FDFC_B);
}
+static bool hns_gmac_need_adjust_link(void *mac_drv, enum mac_speed speed,
+ int duplex)
+{
+ struct mac_driver *drv = (struct mac_driver *)mac_drv;
+ struct hns_mac_cb *mac_cb = drv->mac_cb;
+
+ return (mac_cb->speed != speed) ||
+ (mac_cb->half_duplex == duplex);
+}
+
static int hns_gmac_adjust_link(void *mac_drv, enum mac_speed speed,
u32 full_duplex)
{
@@ -309,6 +319,30 @@ static void hns_gmac_set_promisc(void *m
hns_gmac_set_uc_match(mac_drv, en);
}
+int hns_gmac_wait_fifo_clean(void *mac_drv)
+{
+ struct mac_driver *drv = (struct mac_driver *)mac_drv;
+ int wait_cnt;
+ u32 val;
+
+ wait_cnt = 0;
+ while (wait_cnt++ < HNS_MAX_WAIT_CNT) {
+ val = dsaf_read_dev(drv, GMAC_FIFO_STATE_REG);
+ /* bit5~bit0 is not send complete pkts */
+ if ((val & 0x3f) == 0)
+ break;
+ usleep_range(100, 200);
+ }
+
+ if (wait_cnt >= HNS_MAX_WAIT_CNT) {
+ dev_err(drv->dev,
+ "hns ge %d fifo was not idle.\n", drv->mac_id);
+ return -EBUSY;
+ }
+
+ return 0;
+}
+
static void hns_gmac_init(void *mac_drv)
{
u32 port;
@@ -690,6 +724,7 @@ void *hns_gmac_config(struct hns_mac_cb
mac_drv->mac_disable = hns_gmac_disable;
mac_drv->mac_free = hns_gmac_free;
mac_drv->adjust_link = hns_gmac_adjust_link;
+ mac_drv->need_adjust_link = hns_gmac_need_adjust_link;
mac_drv->set_tx_auto_pause_frames = hns_gmac_set_tx_auto_pause_frames;
mac_drv->config_max_frame_length = hns_gmac_config_max_frame_length;
mac_drv->mac_pausefrm_cfg = hns_gmac_pause_frm_cfg;
@@ -717,6 +752,7 @@ void *hns_gmac_config(struct hns_mac_cb
mac_drv->get_strings = hns_gmac_get_strings;
mac_drv->update_stats = hns_gmac_update_stats;
mac_drv->set_promiscuous = hns_gmac_set_promisc;
+ mac_drv->wait_fifo_clean = hns_gmac_wait_fifo_clean;
return (void *)mac_drv;
}
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c
@@ -114,6 +114,26 @@ int hns_mac_get_port_info(struct hns_mac
return 0;
}
+/**
+ *hns_mac_is_adjust_link - check is need change mac speed and duplex register
+ *@mac_cb: mac device
+ *@speed: phy device speed
+ *@duplex:phy device duplex
+ *
+ */
+bool hns_mac_need_adjust_link(struct hns_mac_cb *mac_cb, int speed, int duplex)
+{
+ struct mac_driver *mac_ctrl_drv;
+
+ mac_ctrl_drv = (struct mac_driver *)(mac_cb->priv.mac);
+
+ if (mac_ctrl_drv->need_adjust_link)
+ return mac_ctrl_drv->need_adjust_link(mac_ctrl_drv,
+ (enum mac_speed)speed, duplex);
+ else
+ return true;
+}
+
void hns_mac_adjust_link(struct hns_mac_cb *mac_cb, int speed, int duplex)
{
int ret;
@@ -430,6 +450,16 @@ int hns_mac_vm_config_bc_en(struct hns_m
return 0;
}
+int hns_mac_wait_fifo_clean(struct hns_mac_cb *mac_cb)
+{
+ struct mac_driver *drv = hns_mac_get_drv(mac_cb);
+
+ if (drv->wait_fifo_clean)
+ return drv->wait_fifo_clean(drv);
+
+ return 0;
+}
+
void hns_mac_reset(struct hns_mac_cb *mac_cb)
{
struct mac_driver *drv = hns_mac_get_drv(mac_cb);
@@ -999,6 +1029,20 @@ static int hns_mac_get_max_port_num(stru
return DSAF_MAX_PORT_NUM;
}
+void hns_mac_enable(struct hns_mac_cb *mac_cb, enum mac_commom_mode mode)
+{
+ struct mac_driver *mac_ctrl_drv = hns_mac_get_drv(mac_cb);
+
+ mac_ctrl_drv->mac_enable(mac_cb->priv.mac, mode);
+}
+
+void hns_mac_disable(struct hns_mac_cb *mac_cb, enum mac_commom_mode mode)
+{
+ struct mac_driver *mac_ctrl_drv = hns_mac_get_drv(mac_cb);
+
+ mac_ctrl_drv->mac_disable(mac_cb->priv.mac, mode);
+}
+
/**
* hns_mac_init - init mac
* @dsaf_dev: dsa fabric device struct pointer
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.h
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.h
@@ -356,6 +356,9 @@ struct mac_driver {
/*adjust mac mode of port,include speed and duplex*/
int (*adjust_link)(void *mac_drv, enum mac_speed speed,
u32 full_duplex);
+ /* need adjust link */
+ bool (*need_adjust_link)(void *mac_drv, enum mac_speed speed,
+ int duplex);
/* config autoegotaite mode of port*/
void (*set_an_mode)(void *mac_drv, u8 enable);
/* config loopbank mode */
@@ -394,6 +397,7 @@ struct mac_driver {
void (*get_info)(void *mac_drv, struct mac_info *mac_info);
void (*update_stats)(void *mac_drv);
+ int (*wait_fifo_clean)(void *mac_drv);
enum mac_mode mac_mode;
u8 mac_id;
@@ -427,6 +431,7 @@ void *hns_xgmac_config(struct hns_mac_cb
int hns_mac_init(struct dsaf_device *dsaf_dev);
void mac_adjust_link(struct net_device *net_dev);
+bool hns_mac_need_adjust_link(struct hns_mac_cb *mac_cb, int speed, int duplex);
void hns_mac_get_link_status(struct hns_mac_cb *mac_cb, u32 *link_status);
int hns_mac_change_vf_addr(struct hns_mac_cb *mac_cb, u32 vmid, char *addr);
int hns_mac_set_multi(struct hns_mac_cb *mac_cb,
@@ -463,5 +468,8 @@ int hns_mac_add_uc_addr(struct hns_mac_c
int hns_mac_rm_uc_addr(struct hns_mac_cb *mac_cb, u8 vf_id,
const unsigned char *addr);
int hns_mac_clr_multicast(struct hns_mac_cb *mac_cb, int vfn);
+void hns_mac_enable(struct hns_mac_cb *mac_cb, enum mac_commom_mode mode);
+void hns_mac_disable(struct hns_mac_cb *mac_cb, enum mac_commom_mode mode);
+int hns_mac_wait_fifo_clean(struct hns_mac_cb *mac_cb);
#endif /* _HNS_DSAF_MAC_H */
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
@@ -2733,6 +2733,35 @@ void hns_dsaf_set_promisc_tcam(struct ds
soft_mac_entry->index = enable ? entry_index : DSAF_INVALID_ENTRY_IDX;
}
+int hns_dsaf_wait_pkt_clean(struct dsaf_device *dsaf_dev, int port)
+{
+ u32 val, val_tmp;
+ int wait_cnt;
+
+ if (port >= DSAF_SERVICE_NW_NUM)
+ return 0;
+
+ wait_cnt = 0;
+ while (wait_cnt++ < HNS_MAX_WAIT_CNT) {
+ val = dsaf_read_dev(dsaf_dev, DSAF_VOQ_IN_PKT_NUM_0_REG +
+ (port + DSAF_XGE_NUM) * 0x40);
+ val_tmp = dsaf_read_dev(dsaf_dev, DSAF_VOQ_OUT_PKT_NUM_0_REG +
+ (port + DSAF_XGE_NUM) * 0x40);
+ if (val == val_tmp)
+ break;
+
+ usleep_range(100, 200);
+ }
+
+ if (wait_cnt >= HNS_MAX_WAIT_CNT) {
+ dev_err(dsaf_dev->dev, "hns dsaf clean wait timeout(%u - %u).\n",
+ val, val_tmp);
+ return -EBUSY;
+ }
+
+ return 0;
+}
+
/**
* dsaf_probe - probo dsaf dev
* @pdev: dasf platform device
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
@@ -44,6 +44,8 @@ struct hns_mac_cb;
#define DSAF_ROCE_CREDIT_CHN 8
#define DSAF_ROCE_CHAN_MODE 3
+#define HNS_MAX_WAIT_CNT 10000
+
enum dsaf_roce_port_mode {
DSAF_ROCE_6PORT_MODE,
DSAF_ROCE_4PORT_MODE,
@@ -463,5 +465,6 @@ int hns_dsaf_rm_mac_addr(
int hns_dsaf_clr_mac_mc_port(struct dsaf_device *dsaf_dev,
u8 mac_id, u8 port_num);
+int hns_dsaf_wait_pkt_clean(struct dsaf_device *dsaf_dev, int port);
#endif /* __HNS_DSAF_MAIN_H__ */
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c
@@ -274,6 +274,29 @@ static void hns_ppe_exc_irq_en(struct hn
dsaf_write_dev(ppe_cb, PPE_INTEN_REG, msk_vlue & vld_msk);
}
+int hns_ppe_wait_tx_fifo_clean(struct hns_ppe_cb *ppe_cb)
+{
+ int wait_cnt;
+ u32 val;
+
+ wait_cnt = 0;
+ while (wait_cnt++ < HNS_MAX_WAIT_CNT) {
+ val = dsaf_read_dev(ppe_cb, PPE_CURR_TX_FIFO0_REG) & 0x3ffU;
+ if (!val)
+ break;
+
+ usleep_range(100, 200);
+ }
+
+ if (wait_cnt >= HNS_MAX_WAIT_CNT) {
+ dev_err(ppe_cb->dev, "hns ppe tx fifo clean wait timeout, still has %u pkt.\n",
+ val);
+ return -EBUSY;
+ }
+
+ return 0;
+}
+
/**
* ppe_init_hw - init ppe
* @ppe_cb: ppe device
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.h
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.h
@@ -100,6 +100,7 @@ struct ppe_common_cb {
};
+int hns_ppe_wait_tx_fifo_clean(struct hns_ppe_cb *ppe_cb);
int hns_ppe_init(struct dsaf_device *dsaf_dev);
void hns_ppe_uninit(struct dsaf_device *dsaf_dev);
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.c
@@ -66,6 +66,29 @@ void hns_rcb_wait_fbd_clean(struct hnae_
"queue(%d) wait fbd(%d) clean fail!!\n", i, fbd_num);
}
+int hns_rcb_wait_tx_ring_clean(struct hnae_queue *qs)
+{
+ u32 head, tail;
+ int wait_cnt;
+
+ tail = dsaf_read_dev(&qs->tx_ring, RCB_REG_TAIL);
+ wait_cnt = 0;
+ while (wait_cnt++ < HNS_MAX_WAIT_CNT) {
+ head = dsaf_read_dev(&qs->tx_ring, RCB_REG_HEAD);
+ if (tail == head)
+ break;
+
+ usleep_range(100, 200);
+ }
+
+ if (wait_cnt >= HNS_MAX_WAIT_CNT) {
+ dev_err(qs->dev->dev, "rcb wait timeout, head not equal to tail.\n");
+ return -EBUSY;
+ }
+
+ return 0;
+}
+
/**
*hns_rcb_reset_ring_hw - ring reset
*@q: ring struct pointer
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.h
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.h
@@ -136,6 +136,7 @@ void hns_rcbv2_int_clr_hw(struct hnae_qu
void hns_rcb_init_hw(struct ring_pair_cb *ring);
void hns_rcb_reset_ring_hw(struct hnae_queue *q);
void hns_rcb_wait_fbd_clean(struct hnae_queue **qs, int q_num, u32 flag);
+int hns_rcb_wait_tx_ring_clean(struct hnae_queue *qs);
u32 hns_rcb_get_rx_coalesced_frames(
struct rcb_common_cb *rcb_common, u32 port_idx);
u32 hns_rcb_get_tx_coalesced_frames(
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_reg.h
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_reg.h
@@ -464,6 +464,7 @@
#define RCB_RING_INTMSK_TX_OVERTIME_REG 0x000C4
#define RCB_RING_INTSTS_TX_OVERTIME_REG 0x000C8
+#define GMAC_FIFO_STATE_REG 0x0000UL
#define GMAC_DUPLEX_TYPE_REG 0x0008UL
#define GMAC_FD_FC_TYPE_REG 0x000CUL
#define GMAC_TX_WATER_LINE_REG 0x0010UL
--- a/drivers/net/ethernet/hisilicon/hns/hns_enet.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
@@ -1212,11 +1212,26 @@ static void hns_nic_adjust_link(struct n
struct hnae_handle *h = priv->ae_handle;
int state = 1;
+ /* If there is no phy, do not need adjust link */
if (ndev->phydev) {
- h->dev->ops->adjust_link(h, ndev->phydev->speed,
- ndev->phydev->duplex);
- state = ndev->phydev->link;
+ /* When phy link down, do nothing */
+ if (ndev->phydev->link == 0)
+ return;
+
+ if (h->dev->ops->need_adjust_link(h, ndev->phydev->speed,
+ ndev->phydev->duplex)) {
+ /* because Hi161X chip don't support to change gmac
+ * speed and duplex with traffic. Delay 200ms to
+ * make sure there is no more data in chip FIFO.
+ */
+ netif_carrier_off(ndev);
+ msleep(200);
+ h->dev->ops->adjust_link(h, ndev->phydev->speed,
+ ndev->phydev->duplex);
+ netif_carrier_on(ndev);
+ }
}
+
state = state && h->dev->ops->get_status(h);
if (state != priv->link) {
next prev parent reply other threads:[~2018-10-09 2:00 UTC|newest]
Thread overview: 181+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-08 18:29 [PATCH 4.18 000/168] 4.18.13-stable review Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 001/168] rseq/selftests: fix parametrized test with -fpie Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 002/168] mac80211: Run TXQ teardown code before de-registering interfaces Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 003/168] mac80211_hwsim: require at least one channel Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 004/168] Btrfs: fix unexpected failure of nocow buffered writes after snapshotting when low on space Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 005/168] KVM: PPC: Book3S HV: Dont truncate HPTE index in xlate function Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 006/168] cfg80211: remove division by size of sizeof(struct ieee80211_wmm_rule) Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 007/168] btrfs: btrfs_shrink_device should call commit transaction at the end Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 008/168] scsi: csiostor: add a check for NULL pointer after kmalloc() Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 009/168] scsi: csiostor: fix incorrect port capabilities Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 010/168] scsi: libata: Add missing newline at end of file Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 011/168] scsi: aacraid: fix a signedness bug Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 012/168] bpf, sockmap: fix potential use after free in bpf_tcp_close Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 013/168] bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 014/168] bpf: sockmap, decrement copied count correctly in redirect error case Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 015/168] mac80211: correct use of IEEE80211_VHT_CAP_RXSTBC_X Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 016/168] mac80211_hwsim: " Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 017/168] cfg80211: make wmm_rule part of the reg_rule structure Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 018/168] mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom Greg Kroah-Hartman
2018-10-08 18:29 ` [PATCH 4.18 019/168] nl80211: Fix nla_put_u8 to u16 for NL80211_WMMR_TXOP Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 020/168] nl80211: Pass center frequency in kHz instead of MHz Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 021/168] bpf: fix several offset tests in bpf_msg_pull_data Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 022/168] gpio: adp5588: Fix sleep-in-atomic-context bug Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 023/168] mac80211: mesh: fix HWMP sequence numbering to follow standard Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 024/168] mac80211: avoid kernel panic when building AMSDU from non-linear SKB Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 025/168] gpiolib: acpi: Switch to cansleep version of GPIO library call Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 026/168] gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 027/168] gpio: dwapb: Fix error handling in dwapb_gpio_probe() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 028/168] bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 029/168] bpf: fix shift upon scatterlist ring wrap-around " Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 030/168] bpf: fix sg shift repair start offset " Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 031/168] tipc: switch to rhashtable iterator Greg Kroah-Hartman
2018-10-08 18:30 ` Greg Kroah-Hartman [this message]
2018-10-08 18:30 ` [PATCH 4.18 033/168] net: hns: add netif_carrier_off before change speed and duplex Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 034/168] sh_eth: Add R7S9210 support Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 035/168] net: mvpp2: initialize port of_node pointer Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 036/168] tc-testing: add test-cases for numeric and invalid control action Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 037/168] cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 038/168] mac80211: do not convert to A-MSDU if frag/subframe limited Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 039/168] mac80211: always account for A-MSDU header changes Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 040/168] tools/kvm_stat: fix python3 issues Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 041/168] tools/kvm_stat: fix handling of invalid paths in debugfs provider Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 042/168] tools/kvm_stat: fix updates for dead guests Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 043/168] gpio: Fix crash due to registration race Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 044/168] ARC: atomics: unbork atomic_fetch_##op() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 045/168] Revert "blk-throttle: fix race between blkcg_bio_issue_check() and cgroup_rmdir()" Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 046/168] md/raid5-cache: disable reshape completely Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 047/168] RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 048/168] selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 049/168] selftests: pmtu: detect correct binary to ping ipv6 addresses Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 050/168] ibmvnic: Include missing return code checks in reset function Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 051/168] bpf: Fix bpf_msg_pull_data() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 052/168] bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 053/168] i2c: uniphier: issue STOP only for last message or I2C_M_STOP Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 054/168] i2c: uniphier-f: " Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 055/168] net: cadence: Fix a sleep-in-atomic-context bug in macb_halt_tx() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 056/168] fs/cifs: dont translate SFM_SLASH (U+F026) to backslash Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 057/168] mac80211: fix an off-by-one issue in A-MSDU max_subframe computation Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 058/168] cfg80211: fix a type issue in ieee80211_chandef_to_operating_class() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 059/168] mac80211: fix WMM TXOP calculation Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 060/168] mac80211: fix a race between restart and CSA flows Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 061/168] mac80211: Fix station bandwidth setting after channel switch Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 062/168] mac80211: dont Tx a deauth frame if the AP forbade Tx Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 063/168] mac80211: shorten the IBSS debug messages Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 064/168] fsnotify: fix ignore mask logic in fsnotify() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 065/168] net/ibm/emac: wrong emac_calc_base call was used by typo Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 066/168] nds32: fix logic for module Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 067/168] nds32: add NULL entry to the end of_device_id array Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 068/168] nds32: Fix empty call trace Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 069/168] nds32: Fix get_user/put_user macro expand pointer problem Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 070/168] nds32: fix build error because of wrong semicolon Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 071/168] tools/vm/slabinfo.c: fix sign-compare warning Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 072/168] tools/vm/page-types.c: fix "defined but not used" warning Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 073/168] nds32: linker script: GCOV kernel may refers data in __exit Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 074/168] ceph: avoid a use-after-free in ceph_destroy_options() Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 075/168] firmware: arm_scmi: fix divide by zero when sustained_perf_level is zero Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 076/168] afs: Fix cell specification to permit an empty address list Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 077/168] mm: madvise(MADV_DODUMP): allow hugetlbfs pages Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 078/168] bpf: 32-bit RSH verification must truncate input before the ALU op Greg Kroah-Hartman
2018-10-08 18:30 ` [PATCH 4.18 079/168] netfilter: xt_cluster: add dependency on conntrack module Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 080/168] netfilter: xt_checksum: ignore gso skbs Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 081/168] HID: intel-ish-hid: Enable Sunrise Point-H ish driver Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 082/168] HID: add support for Apple Magic Keyboards Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 083/168] usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep[i] Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 084/168] pinctrl: msm: Really mask level interrupts to prevent latching Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 085/168] HID: hid-saitek: Add device ID for RAT 7 Contagion Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 086/168] scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values fails Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 087/168] scsi: iscsi: target: Fix conn_ops double free Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 088/168] scsi: qedi: Add the CRC size within iSCSI NVM image Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 089/168] perf annotate: Properly interpret indirect call Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 090/168] perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 091/168] perf util: Fix bad memory access in trace info Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 092/168] perf probe powerpc: Ignore SyS symbols irrespective of endianness Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 093/168] perf annotate: Fix parsing aarch64 branch instructions after objdump update Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 094/168] netfilter: kconfig: nat related expression depend on nftables core Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 095/168] netfilter: nf_tables: release chain in flushing set Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 096/168] Revert "iio: temperature: maxim_thermocouple: add MAX31856 part" Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 097/168] iio: imu: st_lsm6dsx: take into account ts samples in wm configuration Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 098/168] RDMA/ucma: check fd type in ucma_migrate_id() Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 099/168] riscv: Do not overwrite initrd_start and initrd_end Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 100/168] HID: sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 101/168] usb: host: xhci-plat: Iterate over parent nodes for finding quirks Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 102/168] USB: yurex: Check for truncation in yurex_read() Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 103/168] nvmet-rdma: fix possible bogus dereference under heavy load Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 104/168] bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 105/168] net/mlx5: Consider PCI domain in search for next dev Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 106/168] HID: i2c-hid: Dont reset device upon system resume Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 107/168] dm raid: fix reshape race on small devices Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 108/168] drm/nouveau: fix oops in client init failure path Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 109/168] drm/nouveau/mmu: dont attempt to dereference vmm without valid instance pointer Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 110/168] drm/nouveau/TBDdevinit: dont fail when PMU/PRE_OS is missing from VBIOS Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 111/168] drm/nouveau/disp: fix DP disable race Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 112/168] drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP panels Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 113/168] dm raid: fix stripe adding reshape deadlock Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 114/168] dm raid: fix rebuild of specific devices by updating superblock Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 115/168] dm raid: fix RAID leg rebuild errors Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 116/168] r8169: set TxConfig register after TX / RX is enabled, just like RxConfig Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 117/168] fs/cifs: suppress a string overflow warning Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 118/168] net: ena: fix surprise unplug NULL dereference kernel crash Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 119/168] net: ena: fix driver when PAGE_SIZE == 64kB Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 120/168] net: ena: fix device destruction to gracefully free resources Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 121/168] net: ena: fix potential double ena_destroy_device() Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 122/168] net: ena: fix missing lock during device destruction Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 123/168] net: ena: fix missing calls to READ_ONCE Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 124/168] perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing CPUs Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 125/168] sched/topology: Set correct NUMA topology type Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 126/168] dm thin metadata: try to avoid ever aborting transactions Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 127/168] netfilter: conntrack: timeout interface depend on CONFIG_NF_CONNTRACK_TIMEOUT Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 128/168] netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 129/168] netfilter: xt_hashlimit: use s->file instead of s->private Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 130/168] arch/hexagon: fix kernel/dma.c build warning Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 131/168] hexagon: modify ffs() and fls() to return int Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 132/168] drm/amdgpu: Fix SDMA hang in prt mode v2 Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 133/168] arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 134/168] drm/amdgpu: fix error handling in amdgpu_cs_user_fence_chunk Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 135/168] r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 136/168] s390/qeth: use vzalloc for QUERY OAT buffer Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 137/168] s390/qeth: dont dump past end of unknown HW header Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 138/168] cifs: read overflow in is_valid_oplock_break() Greg Kroah-Hartman
2018-10-08 18:31 ` [PATCH 4.18 139/168] asm-generic: io: Fix ioport_map() for !CONFIG_GENERIC_IOMAP && CONFIG_INDIRECT_PIO Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 140/168] xen/manage: dont complain about an empty value in control/sysrq node Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 141/168] xen: avoid crash in disable_hotplug_cpu Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 142/168] xen: fix GCC warning and remove duplicate EVTCHN_ROW/EVTCHN_COL usage Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 143/168] x86/APM: Fix build warning when PROC_FS is not enabled Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 144/168] new primitive: discard_new_inode() Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 145/168] vfs: dont evict uninitialized inode Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 146/168] ovl: set I_CREATING on inode being created Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 147/168] ovl: fix access beyond unterminated strings Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 148/168] ovl: fix memory leak on unlink of indexed file Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 149/168] ovl: fix format of setxattr debug Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 150/168] sysfs: Do not return POSIX ACL xattrs via listxattr Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 151/168] b43: fix DMA error related regression with proprietary firmware Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 152/168] firmware: Fix security issue with request_firmware_into_buf() Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 153/168] firmware: Always initialize the fw_priv list object Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 154/168] cpufreq: qcom-kryo: Fix section annotations Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 155/168] smb2: fix missing files in root share directory listing Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 156/168] iommu/amd: Clear memory encryption mask from physical address Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 157/168] ALSA: hda/realtek - Cannot adjust speakers volume on Dell XPS 27 7760 Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 158/168] crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 159/168] crypto: chelsio - Fix memory corruption in DMA Mapped buffers Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 160/168] crypto: mxs-dcp - Fix wait logic on chan threads Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 161/168] crypto: caam/jr - fix ablkcipher_edesc pointer arithmetic Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 162/168] gpiolib: Free the last requested descriptor Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 163/168] Drivers: hv: vmbus: Use get/put_cpu() in vmbus_connect() Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 164/168] tools: hv: fcopy: set error in case an unknown operation was requested Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 165/168] proc: restrict kernel stack dumps to root Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 166/168] ocfs2: fix locking for res->tracking and dlm->tracking_list Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 167/168] HID: i2c-hid: disable runtime PM operations on hantick touchpad Greg Kroah-Hartman
2018-10-08 18:32 ` [PATCH 4.18 168/168] ixgbe: check return value of napi_complete_done() Greg Kroah-Hartman
2018-10-08 23:13 ` [PATCH 4.18 000/168] 4.18.13-stable review Shuah Khan
2018-10-09 7:14 ` Greg Kroah-Hartman
2018-10-09 3:21 ` Andre Tomt
2018-10-09 9:21 ` Greg Kroah-Hartman
2018-10-09 11:33 ` Andre Tomt
2018-10-09 15:18 ` Pablo Neira Ayuso
2018-10-09 15:20 ` Pablo Neira Ayuso
2018-10-09 16:08 ` Greg Kroah-Hartman
2018-10-09 16:14 ` Greg Kroah-Hartman
2018-10-10 4:12 ` Naresh Kamboju
2018-10-10 5:52 ` Greg Kroah-Hartman
2018-10-09 21:06 ` Guenter Roeck
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=20181008175621.268395199@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=alexander.levin@microsoft.com \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=lipeng321@huawei.com \
--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).