stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, Ikjoon Jang <ikjn@chromium.org>
Subject: [PATCH 5.10 011/120] usb: xhci-mtk: fix unreleased bandwidth data
Date: Mon,  8 Feb 2021 15:59:58 +0100	[thread overview]
Message-ID: <20210208145818.844579598@linuxfoundation.org> (raw)
In-Reply-To: <20210208145818.395353822@linuxfoundation.org>

From: Ikjoon Jang <ikjn@chromium.org>

commit 1d69f9d901ef14d81c3b004e3282b8cc7b456280 upstream.

xhci-mtk needs XHCI_MTK_HOST quirk functions in add_endpoint() and
drop_endpoint() to handle its own sw bandwidth management.

It stores bandwidth data into an internal table every time
add_endpoint() is called, and drops those in drop_endpoint().
But when bandwidth allocation fails at one endpoint, all earlier
allocation from the same interface could still remain at the table.

This patch moves bandwidth management codes to check_bandwidth() and
reset_bandwidth() path. To do so, this patch also adds those functions
to xhci_driver_overrides and lets mtk-xhci to release all failed
endpoints in reset_bandwidth() path.

Fixes: 08e469de87a2 ("usb: xhci-mtk: supports bandwidth scheduling with multi-TT")
Signed-off-by: Ikjoon Jang <ikjn@chromium.org>
Link: https://lore.kernel.org/r/20210113180444.v6.1.Id0d31b5f3ddf5e734d2ab11161ac5821921b1e1e@changeid
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/usb/host/xhci-mtk-sch.c |  123 +++++++++++++++++++++++++++-------------
 drivers/usb/host/xhci-mtk.c     |    2 
 drivers/usb/host/xhci-mtk.h     |   13 ++++
 drivers/usb/host/xhci.c         |    8 +-
 drivers/usb/host/xhci.h         |    4 +
 5 files changed, 111 insertions(+), 39 deletions(-)

--- a/drivers/usb/host/xhci-mtk-sch.c
+++ b/drivers/usb/host/xhci-mtk-sch.c
@@ -200,6 +200,7 @@ static struct mu3h_sch_ep_info *create_s
 
 	sch_ep->sch_tt = tt;
 	sch_ep->ep = ep;
+	INIT_LIST_HEAD(&sch_ep->tt_endpoint);
 
 	return sch_ep;
 }
@@ -583,6 +584,8 @@ int xhci_mtk_sch_init(struct xhci_hcd_mt
 
 	mtk->sch_array = sch_array;
 
+	INIT_LIST_HEAD(&mtk->bw_ep_list_new);
+
 	return 0;
 }
 EXPORT_SYMBOL_GPL(xhci_mtk_sch_init);
@@ -601,19 +604,14 @@ int xhci_mtk_add_ep_quirk(struct usb_hcd
 	struct xhci_ep_ctx *ep_ctx;
 	struct xhci_slot_ctx *slot_ctx;
 	struct xhci_virt_device *virt_dev;
-	struct mu3h_sch_bw_info *sch_bw;
 	struct mu3h_sch_ep_info *sch_ep;
-	struct mu3h_sch_bw_info *sch_array;
 	unsigned int ep_index;
-	int bw_index;
-	int ret = 0;
 
 	xhci = hcd_to_xhci(hcd);
 	virt_dev = xhci->devs[udev->slot_id];
 	ep_index = xhci_get_endpoint_index(&ep->desc);
 	slot_ctx = xhci_get_slot_ctx(xhci, virt_dev->in_ctx);
 	ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index);
-	sch_array = mtk->sch_array;
 
 	xhci_dbg(xhci, "%s() type:%d, speed:%d, mpkt:%d, dir:%d, ep:%p\n",
 		__func__, usb_endpoint_type(&ep->desc), udev->speed,
@@ -632,39 +630,34 @@ int xhci_mtk_add_ep_quirk(struct usb_hcd
 		return 0;
 	}
 
-	bw_index = get_bw_index(xhci, udev, ep);
-	sch_bw = &sch_array[bw_index];
-
 	sch_ep = create_sch_ep(udev, ep, ep_ctx);
 	if (IS_ERR_OR_NULL(sch_ep))
 		return -ENOMEM;
 
 	setup_sch_info(udev, ep_ctx, sch_ep);
 
-	ret = check_sch_bw(udev, sch_bw, sch_ep);
-	if (ret) {
-		xhci_err(xhci, "Not enough bandwidth!\n");
-		if (is_fs_or_ls(udev->speed))
-			drop_tt(udev);
-
-		kfree(sch_ep);
-		return -ENOSPC;
-	}
+	list_add_tail(&sch_ep->endpoint, &mtk->bw_ep_list_new);
 
-	list_add_tail(&sch_ep->endpoint, &sch_bw->bw_ep_list);
+	return 0;
+}
+EXPORT_SYMBOL_GPL(xhci_mtk_add_ep_quirk);
 
-	ep_ctx->reserved[0] |= cpu_to_le32(EP_BPKTS(sch_ep->pkts)
-		| EP_BCSCOUNT(sch_ep->cs_count) | EP_BBM(sch_ep->burst_mode));
-	ep_ctx->reserved[1] |= cpu_to_le32(EP_BOFFSET(sch_ep->offset)
-		| EP_BREPEAT(sch_ep->repeat));
+static void xhci_mtk_drop_ep(struct xhci_hcd_mtk *mtk, struct usb_device *udev,
+			     struct mu3h_sch_ep_info *sch_ep)
+{
+	struct xhci_hcd *xhci = hcd_to_xhci(mtk->hcd);
+	int bw_index = get_bw_index(xhci, udev, sch_ep->ep);
+	struct mu3h_sch_bw_info *sch_bw = &mtk->sch_array[bw_index];
 
-	xhci_dbg(xhci, " PKTS:%x, CSCOUNT:%x, BM:%x, OFFSET:%x, REPEAT:%x\n",
-			sch_ep->pkts, sch_ep->cs_count, sch_ep->burst_mode,
-			sch_ep->offset, sch_ep->repeat);
+	update_bus_bw(sch_bw, sch_ep, 0);
+	list_del(&sch_ep->endpoint);
 
-	return 0;
+	if (sch_ep->sch_tt) {
+		list_del(&sch_ep->tt_endpoint);
+		drop_tt(udev);
+	}
+	kfree(sch_ep);
 }
-EXPORT_SYMBOL_GPL(xhci_mtk_add_ep_quirk);
 
 void xhci_mtk_drop_ep_quirk(struct usb_hcd *hcd, struct usb_device *udev,
 		struct usb_host_endpoint *ep)
@@ -675,7 +668,7 @@ void xhci_mtk_drop_ep_quirk(struct usb_h
 	struct xhci_virt_device *virt_dev;
 	struct mu3h_sch_bw_info *sch_array;
 	struct mu3h_sch_bw_info *sch_bw;
-	struct mu3h_sch_ep_info *sch_ep;
+	struct mu3h_sch_ep_info *sch_ep, *tmp;
 	int bw_index;
 
 	xhci = hcd_to_xhci(hcd);
@@ -694,17 +687,73 @@ void xhci_mtk_drop_ep_quirk(struct usb_h
 	bw_index = get_bw_index(xhci, udev, ep);
 	sch_bw = &sch_array[bw_index];
 
-	list_for_each_entry(sch_ep, &sch_bw->bw_ep_list, endpoint) {
+	list_for_each_entry_safe(sch_ep, tmp, &sch_bw->bw_ep_list, endpoint) {
 		if (sch_ep->ep == ep) {
-			update_bus_bw(sch_bw, sch_ep, 0);
-			list_del(&sch_ep->endpoint);
-			if (is_fs_or_ls(udev->speed)) {
-				list_del(&sch_ep->tt_endpoint);
-				drop_tt(udev);
-			}
-			kfree(sch_ep);
-			break;
+			xhci_mtk_drop_ep(mtk, udev, sch_ep);
 		}
 	}
 }
 EXPORT_SYMBOL_GPL(xhci_mtk_drop_ep_quirk);
+
+int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
+{
+	struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd);
+	struct xhci_hcd *xhci = hcd_to_xhci(hcd);
+	struct xhci_virt_device *virt_dev = xhci->devs[udev->slot_id];
+	struct mu3h_sch_bw_info *sch_bw;
+	struct mu3h_sch_ep_info *sch_ep, *tmp;
+	int bw_index, ret;
+
+	dev_dbg(&udev->dev, "%s\n", __func__);
+
+	list_for_each_entry(sch_ep, &mtk->bw_ep_list_new, endpoint) {
+		bw_index = get_bw_index(xhci, udev, sch_ep->ep);
+		sch_bw = &mtk->sch_array[bw_index];
+
+		ret = check_sch_bw(udev, sch_bw, sch_ep);
+		if (ret) {
+			xhci_err(xhci, "Not enough bandwidth!\n");
+			return -ENOSPC;
+		}
+	}
+
+	list_for_each_entry_safe(sch_ep, tmp, &mtk->bw_ep_list_new, endpoint) {
+		struct xhci_ep_ctx *ep_ctx;
+		struct usb_host_endpoint *ep = sch_ep->ep;
+		unsigned int ep_index = xhci_get_endpoint_index(&ep->desc);
+
+		bw_index = get_bw_index(xhci, udev, ep);
+		sch_bw = &mtk->sch_array[bw_index];
+
+		list_move_tail(&sch_ep->endpoint, &sch_bw->bw_ep_list);
+
+		ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index);
+		ep_ctx->reserved[0] |= cpu_to_le32(EP_BPKTS(sch_ep->pkts)
+			| EP_BCSCOUNT(sch_ep->cs_count)
+			| EP_BBM(sch_ep->burst_mode));
+		ep_ctx->reserved[1] |= cpu_to_le32(EP_BOFFSET(sch_ep->offset)
+			| EP_BREPEAT(sch_ep->repeat));
+
+		xhci_dbg(xhci, " PKTS:%x, CSCOUNT:%x, BM:%x, OFFSET:%x, REPEAT:%x\n",
+			sch_ep->pkts, sch_ep->cs_count, sch_ep->burst_mode,
+			sch_ep->offset, sch_ep->repeat);
+	}
+
+	return xhci_check_bandwidth(hcd, udev);
+}
+EXPORT_SYMBOL_GPL(xhci_mtk_check_bandwidth);
+
+void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
+{
+	struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd);
+	struct mu3h_sch_ep_info *sch_ep, *tmp;
+
+	dev_dbg(&udev->dev, "%s\n", __func__);
+
+	list_for_each_entry_safe(sch_ep, tmp, &mtk->bw_ep_list_new, endpoint) {
+		xhci_mtk_drop_ep(mtk, udev, sch_ep);
+	}
+
+	xhci_reset_bandwidth(hcd, udev);
+}
+EXPORT_SYMBOL_GPL(xhci_mtk_reset_bandwidth);
--- a/drivers/usb/host/xhci-mtk.c
+++ b/drivers/usb/host/xhci-mtk.c
@@ -347,6 +347,8 @@ static void usb_wakeup_set(struct xhci_h
 static int xhci_mtk_setup(struct usb_hcd *hcd);
 static const struct xhci_driver_overrides xhci_mtk_overrides __initconst = {
 	.reset = xhci_mtk_setup,
+	.check_bandwidth = xhci_mtk_check_bandwidth,
+	.reset_bandwidth = xhci_mtk_reset_bandwidth,
 };
 
 static struct hc_driver __read_mostly xhci_mtk_hc_driver;
--- a/drivers/usb/host/xhci-mtk.h
+++ b/drivers/usb/host/xhci-mtk.h
@@ -130,6 +130,7 @@ struct mu3c_ippc_regs {
 struct xhci_hcd_mtk {
 	struct device *dev;
 	struct usb_hcd *hcd;
+	struct list_head bw_ep_list_new;
 	struct mu3h_sch_bw_info *sch_array;
 	struct mu3c_ippc_regs __iomem *ippc_regs;
 	bool has_ippc;
@@ -166,6 +167,8 @@ int xhci_mtk_add_ep_quirk(struct usb_hcd
 		struct usb_host_endpoint *ep);
 void xhci_mtk_drop_ep_quirk(struct usb_hcd *hcd, struct usb_device *udev,
 		struct usb_host_endpoint *ep);
+int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev);
+void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev);
 
 #else
 static inline int xhci_mtk_add_ep_quirk(struct usb_hcd *hcd,
@@ -179,6 +182,16 @@ static inline void xhci_mtk_drop_ep_quir
 {
 }
 
+static inline int xhci_mtk_check_bandwidth(struct usb_hcd *hcd,
+		struct usb_device *udev)
+{
+	return 0;
+}
+
+static inline void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd,
+		struct usb_device *udev)
+{
+}
 #endif
 
 #endif		/* _XHCI_MTK_H_ */
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -2861,7 +2861,7 @@ static void xhci_check_bw_drop_ep_stream
  * else should be touching the xhci->devs[slot_id] structure, so we
  * don't need to take the xhci->lock for manipulating that.
  */
-static int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
+int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
 {
 	int i;
 	int ret = 0;
@@ -2959,7 +2959,7 @@ command_cleanup:
 	return ret;
 }
 
-static void xhci_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
+void xhci_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
 {
 	struct xhci_hcd *xhci;
 	struct xhci_virt_device	*virt_dev;
@@ -5385,6 +5385,10 @@ void xhci_init_driver(struct hc_driver *
 			drv->reset = over->reset;
 		if (over->start)
 			drv->start = over->start;
+		if (over->check_bandwidth)
+			drv->check_bandwidth = over->check_bandwidth;
+		if (over->reset_bandwidth)
+			drv->reset_bandwidth = over->reset_bandwidth;
 	}
 }
 EXPORT_SYMBOL_GPL(xhci_init_driver);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1916,6 +1916,8 @@ struct xhci_driver_overrides {
 	size_t extra_priv_size;
 	int (*reset)(struct usb_hcd *hcd);
 	int (*start)(struct usb_hcd *hcd);
+	int (*check_bandwidth)(struct usb_hcd *, struct usb_device *);
+	void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);
 };
 
 #define	XHCI_CFC_DELAY		10
@@ -2070,6 +2072,8 @@ int xhci_gen_setup(struct usb_hcd *hcd,
 void xhci_shutdown(struct usb_hcd *hcd);
 void xhci_init_driver(struct hc_driver *drv,
 		      const struct xhci_driver_overrides *over);
+int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev);
+void xhci_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev);
 int xhci_disable_slot(struct xhci_hcd *xhci, u32 slot_id);
 int xhci_ext_cap_init(struct xhci_hcd *xhci);
 



  parent reply	other threads:[~2021-02-08 15:35 UTC|newest]

Thread overview: 140+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-08 14:59 [PATCH 5.10 000/120] 5.10.15-rc1 review Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 001/120] USB: serial: cp210x: add pid/vid for WSDA-200-USB Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 002/120] USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 003/120] USB: serial: option: Adding support for Cinterion MV31 Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 004/120] usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 005/120] USB: gadget: legacy: fix an error code in eth_bind() Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 006/120] usb: gadget: aspeed: add missing of_node_put Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 007/120] USB: usblp: dont call usb_set_interface if theres a single alt Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 008/120] usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop() Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 009/120] usb: dwc2: Fix endpoint direction check in ep_from_windex Greg Kroah-Hartman
2021-02-08 14:59 ` [PATCH 5.10 010/120] usb: dwc3: fix clock issue during resume in OTG mode Greg Kroah-Hartman
2021-02-08 14:59 ` Greg Kroah-Hartman [this message]
2021-02-08 14:59 ` [PATCH 5.10 012/120] usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 013/120] usb: xhci-mtk: break loop when find the endpoint to drop Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 014/120] ARM: OMAP1: OSK: fix ohci-omap breakage Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 015/120] arm64: dts: qcom: c630: keep both touchpad devices enabled Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 016/120] Input: i8042 - unbreak Pegatron C15B Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 017/120] arm64: dts: amlogic: meson-g12: Set FL-adj property value Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 018/120] arm64: dts: rockchip: fix vopl iommu irq on px30 Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 019/120] arm64: dts: rockchip: Use only supported PCIe link speed on Pinebook Pro Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 020/120] ARM: dts: stm32: Fix polarity of the DH DRC02 uSD card detect Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 021/120] ARM: dts: stm32: Connect card-detect signal on DHCOM Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 022/120] ARM: dts: stm32: Disable WP on DHCOM uSD slot Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 023/120] ARM: dts: stm32: Disable optional TSC2004 on DRC02 board Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 024/120] ARM: dts: stm32: Fix GPIO hog flags on DHCOM DRC02 Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 025/120] vdpa/mlx5: Fix memory key MTT population Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 026/120] bpf, cgroup: Fix optlen WARN_ON_ONCE toctou Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 027/120] bpf, cgroup: Fix problematic bounds check Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 028/120] bpf, inode_storage: Put file handler if no storage was found Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 029/120] um: virtio: free vu_dev only with the contained struct device Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 030/120] bpf, preload: Fix build when $(O) points to a relative path Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 031/120] arm64: dts: meson: switch TFLASH_VDD_EN pin to open drain on Odroid-C4 Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 032/120] r8169: work around RTL8125 UDP hw bug Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 033/120] rxrpc: Fix deadlock around release of dst cached on udp tunnel Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 034/120] arm64: dts: ls1046a: fix dcfg address range Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 035/120] SUNRPC: Fix NFS READs that start at non-page-aligned offsets Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 036/120] igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 037/120] igc: check return value of ret_val in igc_config_fc_after_link_up Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 038/120] i40e: Revert "i40e: dont report link up for a VF who hasnt enabled queues" Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 039/120] ibmvnic: device remove has higher precedence over reset Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 040/120] net/mlx5: Fix function calculation for page trees Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 041/120] net/mlx5: Fix leak upon failure of rule creation Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 042/120] net/mlx5e: Update max_opened_tc also when channels are closed Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 043/120] net/mlx5e: Release skb in case of failure in tc update skb Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 044/120] net: lapb: Copy the skb before sending a packet Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 045/120] net: mvpp2: TCAM entry enable should be written after SRAM data Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 046/120] r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 047/120] net: ipa: pass correct dma_handle to dma_free_coherent() Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 048/120] ARM: dts: sun7i: a20: bananapro: Fix ethernet phy-mode Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 049/120] nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 050/120] vdpa/mlx5: Restore the hardware used index after change map Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 051/120] memblock: do not start bottom-up allocations with kernel_end Greg Kroah-Hartman
2021-02-09 15:07   ` Thiago Jung Bauermann
2021-02-09 19:10     ` Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 052/120] kbuild: fix duplicated flags in DEBUG_CFLAGS Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 053/120] thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 054/120] ovl: fix dentry leak in ovl_get_redirect Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 055/120] ovl: avoid deadlock on directory ioctl Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 056/120] ovl: implement volatile-specific fsync error behaviour Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 057/120] mac80211: fix station rate table updates on assoc Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 058/120] gpiolib: free device name on error path to fix kmemleak Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 059/120] fgraph: Initialize tracing_graph_pause at task creation Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 060/120] tracing/kprobe: Fix to support kretprobe events on unloaded modules Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 061/120] kretprobe: Avoid re-registration of the same kretprobe earlier Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 062/120] tracing: Use pause-on-trace with the latency tracers Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 063/120] tracepoint: Fix race between tracing and removing tracepoint Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 064/120] libnvdimm/namespace: Fix visibility of namespace resource attribute Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 065/120] libnvdimm/dimm: Avoid race between probe and available_slots_show() Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 066/120] genirq: Prevent [devm_]irq_alloc_desc from returning irq 0 Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 067/120] genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 068/120] scripts: use pkg-config to locate libcrypto Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 069/120] xhci: fix bounce buffer usage for non-sg list case Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 070/120] RISC-V: Define MAXPHYSMEM_1GB only for RV32 Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 071/120] cifs: report error instead of invalid when revalidating a dentry fails Greg Kroah-Hartman
2021-02-08 15:00 ` [PATCH 5.10 072/120] iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 073/120] smb3: Fix out-of-bounds bug in SMB2_negotiate() Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 074/120] smb3: fix crediting for compounding when only one request in flight Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 075/120] mmc: sdhci-pltfm: Fix linking err for sdhci-brcmstb Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 076/120] mmc: core: Limit retries when analyse of SDIO tuples fails Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 077/120] Fix unsynchronized access to sev members through svm_register_enc_region Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 078/120] drm/dp/mst: Export drm_dp_get_vc_payload_bw() Greg Kroah-Hartman
2021-02-10 12:25   ` Pavel Machek
2021-02-10 12:40     ` Imre Deak
2021-02-08 15:01 ` [PATCH 5.10 079/120] drm/i915: Fix the MST PBN divider calculation Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 080/120] drm/i915/gem: Drop lru bumping on display unpinning Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 081/120] drm/i915/gt: Close race between enable_breadcrumbs and cancel_breadcrumbs Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 082/120] drm/i915/display: Prevent double YUV range correction on HDR planes Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 083/120] drm/i915: Extract intel_ddi_power_up_lanes() Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 084/120] drm/i915: Power up combo PHY lanes for for HDMI as well Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 085/120] drm/amd/display: Revert "Fix EDID parsing after resume from suspend" Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 086/120] io_uring: dont modify identitys files uncess identity is cowed Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 087/120] nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 088/120] KVM: SVM: Treat SVM as unsupported when running as an SEV guest Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 089/120] KVM: x86/mmu: Fix TDP MMU zap collapsible SPTEs Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 090/120] KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 091/120] KVM: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 092/120] KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 093/120] KVM: x86: Set so called reserved CR3 bits in LM mask at vCPU reset Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 094/120] DTS: ARM: gta04: remove legacy spi-cs-high to make display work again Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 095/120] ARM: dts; gta04: SPI panel chip select is active low Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 096/120] ARM: footbridge: fix dc21285 PCI configuration accessors Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 097/120] ARM: 9043/1: tegra: Fix misplaced tegra_uart_config in decompressor Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 098/120] mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 099/120] mm: hugetlb: fix a race between freeing and dissolving the page Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 100/120] mm: hugetlb: fix a race between isolating and freeing page Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 101/120] mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 102/120] mm, compaction: move high_pfn to the for loop scope Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 103/120] mm/vmalloc: separate put pages and flush VM flags Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 104/120] mm: thp: fix MADV_REMOVE deadlock on shmem THP Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 105/120] mm/filemap: add missing mem_cgroup_uncharge() to __add_to_page_cache_locked() Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 106/120] x86/build: Disable CET instrumentation in the kernel Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 107/120] x86/debug: Fix DR6 handling Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 108/120] x86/debug: Prevent data breakpoints on __per_cpu_offset Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 109/120] x86/debug: Prevent data breakpoints on cpu_dr7 Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 110/120] x86/apic: Add extra serialization for non-serializing MSRs Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 111/120] Input: goodix - add support for Goodix GT9286 chip Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 112/120] Input: xpad - sync supported devices with fork on GitHub Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 113/120] Input: ili210x - implement pressure reporting for ILI251x Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 114/120] md: Set prev_flush_start and flush_bio in an atomic way Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 115/120] igc: Report speed and duplex as unknown when device is runtime suspended Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 116/120] neighbour: Prevent a dead entry from updating gc_list Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 117/120] net: ip_tunnel: fix mtu calculation Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 118/120] udp: ipv4: manipulate network header of NATed UDP GRO fraglist Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 119/120] net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add Greg Kroah-Hartman
2021-02-08 15:01 ` [PATCH 5.10 120/120] net: sched: replaced invalid qdisc tree flush helper in qdisc_replace Greg Kroah-Hartman
2021-02-08 18:33 ` [PATCH 5.10 000/120] 5.10.15-rc1 review Pavel Machek
2021-02-10  8:31   ` Greg Kroah-Hartman
2021-02-08 20:01 ` Shuah Khan
2021-02-10  8:30   ` Greg Kroah-Hartman
2021-02-08 20:22 ` Davidson Francis
2021-02-10  8:30   ` Greg Kroah-Hartman
2021-02-09  2:31 ` Naresh Kamboju
2021-02-09  6:52   ` Rolf Eike Beer
2021-02-09  7:11     ` Naresh Kamboju
2021-02-09 14:12 ` Naresh Kamboju
2021-02-10  8:30   ` Greg Kroah-Hartman
2021-02-09 18:14 ` Guenter Roeck
2021-02-10  8:30   ` Greg Kroah-Hartman
2021-02-10  1:28 ` Ross Schmidt
2021-02-10  8:30   ` 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=20210208145818.844579598@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=ikjn@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --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).