linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Felix Kuehling <Felix.Kuehling@amd.com>,
	Zhou Qingyang <zhou1615@umn.edu>,
	Philip Yang <Philip.Yang@amd.com>,
	Alex Deucher <alexander.deucher@amd.com>,
	Sasha Levin <sashal@kernel.org>,
	christian.koenig@amd.com, Xinhui.Pan@amd.com, airlied@linux.ie,
	daniel@ffwll.ch, amd-gfx@lists.freedesktop.org,
	dri-devel@lists.freedesktop.org
Subject: [PATCH AUTOSEL 5.16 130/217] drm/amdkfd: Fix error handling in svm_range_add
Date: Mon, 17 Jan 2022 21:18:13 -0500	[thread overview]
Message-ID: <20220118021940.1942199-130-sashal@kernel.org> (raw)
In-Reply-To: <20220118021940.1942199-1-sashal@kernel.org>

From: Felix Kuehling <Felix.Kuehling@amd.com>

[ Upstream commit 726be40607264b180a2b336c81e1dcff941de618 ]

Add null-pointer check after the last svm_range_new call. This was
originally reported by Zhou Qingyang <zhou1615@umn.edu> based on a
static analyzer.

To avoid duplicating the unwinding code from svm_range_handle_overlap,
I merged the two functions into one.

Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Cc: Zhou Qingyang <zhou1615@umn.edu>
Reviewed-by: Philip Yang <Philip.Yang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/gpu/drm/amd/amdkfd/kfd_svm.c | 138 ++++++++++-----------------
 1 file changed, 49 insertions(+), 89 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
index 3cb4681c5f539..c0b8f4ff80b8a 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
@@ -943,7 +943,7 @@ svm_range_split(struct svm_range *prange, uint64_t start, uint64_t last,
 }
 
 static int
-svm_range_split_tail(struct svm_range *prange, struct svm_range *new,
+svm_range_split_tail(struct svm_range *prange,
 		     uint64_t new_last, struct list_head *insert_list)
 {
 	struct svm_range *tail;
@@ -955,7 +955,7 @@ svm_range_split_tail(struct svm_range *prange, struct svm_range *new,
 }
 
 static int
-svm_range_split_head(struct svm_range *prange, struct svm_range *new,
+svm_range_split_head(struct svm_range *prange,
 		     uint64_t new_start, struct list_head *insert_list)
 {
 	struct svm_range *head;
@@ -1764,49 +1764,54 @@ static struct svm_range *svm_range_clone(struct svm_range *old)
 }
 
 /**
- * svm_range_handle_overlap - split overlap ranges
- * @svms: svm range list header
- * @new: range added with this attributes
- * @start: range added start address, in pages
- * @last: range last address, in pages
- * @update_list: output, the ranges attributes are updated. For set_attr, this
- *               will do validation and map to GPUs. For unmap, this will be
- *               removed and unmap from GPUs
- * @insert_list: output, the ranges will be inserted into svms, attributes are
- *               not changes. For set_attr, this will add into svms.
- * @remove_list:output, the ranges will be removed from svms
- * @left: the remaining range after overlap, For set_attr, this will be added
- *        as new range.
+ * svm_range_add - add svm range and handle overlap
+ * @p: the range add to this process svms
+ * @start: page size aligned
+ * @size: page size aligned
+ * @nattr: number of attributes
+ * @attrs: array of attributes
+ * @update_list: output, the ranges need validate and update GPU mapping
+ * @insert_list: output, the ranges need insert to svms
+ * @remove_list: output, the ranges are replaced and need remove from svms
  *
- * Total have 5 overlap cases.
+ * Check if the virtual address range has overlap with any existing ranges,
+ * split partly overlapping ranges and add new ranges in the gaps. All changes
+ * should be applied to the range_list and interval tree transactionally. If
+ * any range split or allocation fails, the entire update fails. Therefore any
+ * existing overlapping svm_ranges are cloned and the original svm_ranges left
+ * unchanged.
  *
- * This function handles overlap of an address interval with existing
- * struct svm_ranges for applying new attributes. This may require
- * splitting existing struct svm_ranges. All changes should be applied to
- * the range_list and interval tree transactionally. If any split operation
- * fails, the entire update fails. Therefore the existing overlapping
- * svm_ranges are cloned and the original svm_ranges left unchanged. If the
- * transaction succeeds, the modified clones are added and the originals
- * freed. Otherwise the clones are removed and the old svm_ranges remain.
+ * If the transaction succeeds, the caller can update and insert clones and
+ * new ranges, then free the originals.
  *
- * Context: The caller must hold svms->lock
+ * Otherwise the caller can free the clones and new ranges, while the old
+ * svm_ranges remain unchanged.
+ *
+ * Context: Process context, caller must hold svms->lock
+ *
+ * Return:
+ * 0 - OK, otherwise error code
  */
 static int
-svm_range_handle_overlap(struct svm_range_list *svms, struct svm_range *new,
-			 unsigned long start, unsigned long last,
-			 struct list_head *update_list,
-			 struct list_head *insert_list,
-			 struct list_head *remove_list,
-			 unsigned long *left)
+svm_range_add(struct kfd_process *p, uint64_t start, uint64_t size,
+	      uint32_t nattr, struct kfd_ioctl_svm_attribute *attrs,
+	      struct list_head *update_list, struct list_head *insert_list,
+	      struct list_head *remove_list)
 {
+	unsigned long last = start + size - 1UL;
+	struct svm_range_list *svms = &p->svms;
 	struct interval_tree_node *node;
+	struct svm_range new = {0};
 	struct svm_range *prange;
 	struct svm_range *tmp;
 	int r = 0;
 
+	pr_debug("svms 0x%p [0x%llx 0x%lx]\n", &p->svms, start, last);
+
 	INIT_LIST_HEAD(update_list);
 	INIT_LIST_HEAD(insert_list);
 	INIT_LIST_HEAD(remove_list);
+	svm_range_apply_attrs(p, &new, nattr, attrs);
 
 	node = interval_tree_iter_first(&svms->objects, start, last);
 	while (node) {
@@ -1834,14 +1839,14 @@ svm_range_handle_overlap(struct svm_range_list *svms, struct svm_range *new,
 
 			if (node->start < start) {
 				pr_debug("change old range start\n");
-				r = svm_range_split_head(prange, new, start,
+				r = svm_range_split_head(prange, start,
 							 insert_list);
 				if (r)
 					goto out;
 			}
 			if (node->last > last) {
 				pr_debug("change old range last\n");
-				r = svm_range_split_tail(prange, new, last,
+				r = svm_range_split_tail(prange, last,
 							 insert_list);
 				if (r)
 					goto out;
@@ -1853,7 +1858,7 @@ svm_range_handle_overlap(struct svm_range_list *svms, struct svm_range *new,
 			prange = old;
 		}
 
-		if (!svm_range_is_same_attrs(prange, new))
+		if (!svm_range_is_same_attrs(prange, &new))
 			list_add(&prange->update_list, update_list);
 
 		/* insert a new node if needed */
@@ -1873,8 +1878,16 @@ svm_range_handle_overlap(struct svm_range_list *svms, struct svm_range *new,
 		start = next_start;
 	}
 
-	if (left && start <= last)
-		*left = last - start + 1;
+	/* add a final range at the end if needed */
+	if (start <= last) {
+		prange = svm_range_new(svms, start, last);
+		if (!prange) {
+			r = -ENOMEM;
+			goto out;
+		}
+		list_add(&prange->insert_list, insert_list);
+		list_add(&prange->update_list, update_list);
+	}
 
 out:
 	if (r)
@@ -2894,59 +2907,6 @@ svm_range_is_valid(struct kfd_process *p, uint64_t start, uint64_t size)
 				  NULL);
 }
 
-/**
- * svm_range_add - add svm range and handle overlap
- * @p: the range add to this process svms
- * @start: page size aligned
- * @size: page size aligned
- * @nattr: number of attributes
- * @attrs: array of attributes
- * @update_list: output, the ranges need validate and update GPU mapping
- * @insert_list: output, the ranges need insert to svms
- * @remove_list: output, the ranges are replaced and need remove from svms
- *
- * Check if the virtual address range has overlap with the registered ranges,
- * split the overlapped range, copy and adjust pages address and vram nodes in
- * old and new ranges.
- *
- * Context: Process context, caller must hold svms->lock
- *
- * Return:
- * 0 - OK, otherwise error code
- */
-static int
-svm_range_add(struct kfd_process *p, uint64_t start, uint64_t size,
-	      uint32_t nattr, struct kfd_ioctl_svm_attribute *attrs,
-	      struct list_head *update_list, struct list_head *insert_list,
-	      struct list_head *remove_list)
-{
-	uint64_t last = start + size - 1UL;
-	struct svm_range_list *svms;
-	struct svm_range new = {0};
-	struct svm_range *prange;
-	unsigned long left = 0;
-	int r = 0;
-
-	pr_debug("svms 0x%p [0x%llx 0x%llx]\n", &p->svms, start, last);
-
-	svm_range_apply_attrs(p, &new, nattr, attrs);
-
-	svms = &p->svms;
-
-	r = svm_range_handle_overlap(svms, &new, start, last, update_list,
-				     insert_list, remove_list, &left);
-	if (r)
-		return r;
-
-	if (left) {
-		prange = svm_range_new(svms, last - left + 1, last);
-		list_add(&prange->insert_list, insert_list);
-		list_add(&prange->update_list, update_list);
-	}
-
-	return 0;
-}
-
 /**
  * svm_range_best_prefetch_location - decide the best prefetch location
  * @prange: svm range structure
-- 
2.34.1


  parent reply	other threads:[~2022-01-18  2:33 UTC|newest]

Thread overview: 226+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-18  2:16 [PATCH AUTOSEL 5.16 001/217] Bluetooth: hci_sock: purge socket queues in the destruct() callback Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 002/217] Bluetooth: Fix debugfs entry leak in hci_register_dev() Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 003/217] Bluetooth: Fix memory leak of hci device Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 004/217] drm/panel: Delete panel on mipi_dsi_attach() failure Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 005/217] Bluetooth: Fix removing adv when processing cmd complete Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 006/217] drm/sched: Avoid lockdep spalt on killing a processes Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 007/217] fs: dlm: filter user dlm messages for kernel locks Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 008/217] libbpf: Detect corrupted ELF symbols section Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 009/217] libbpf: Improve sanity checking during BTF fix up Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 010/217] libbpf: Validate that .BTF and .BTF.ext sections contain data Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 011/217] drm/lima: fix warning when CONFIG_DEBUG_SG=y & CONFIG_DMA_API_DEBUG=y Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 012/217] selftests/bpf: Fix memory leaks in btf_type_c_dump() helper Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 013/217] selftests/bpf: Destroy XDP link correctly Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 014/217] selftests/bpf: Fix bpf_object leak in skb_ctx selftest Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 015/217] ar5523: Fix null-ptr-deref with unexpected WDCMSG_TARGET_START reply Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 016/217] drm/bridge: dw-hdmi: handle ELD when DRM_BRIDGE_ATTACH_NO_CONNECTOR Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 017/217] drm/nouveau/pmu/gm200-: avoid touching PMU outside of DEVINIT/PREOS/ACR Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 018/217] media: atomisp: add NULL check for asd obtained from atomisp_video_pipe Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 019/217] media: atomisp: fix try_fmt logic Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 020/217] media: atomisp: set per-device's default mode Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 021/217] media: atomisp-ov2680: Fix ov2680_set_fmt() clobbering the exposure Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 022/217] media: atomisp: check before deference asd variable Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 023/217] ARM: shmobile: rcar-gen2: Add missing of_node_put() Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 024/217] ath11k: enable IEEE80211_VHT_EXT_NSS_BW_CAPABLE if NSS ratio enabled Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 025/217] batman-adv: allow netlink usage in unprivileged containers Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 026/217] bpf: Change value of MAX_TAIL_CALL_CNT from 32 to 33 Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 027/217] media: atomisp: handle errors at sh_css_create_isp_params() Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 028/217] ath11k: Fix crash caused by uninitialized TX ring Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 029/217] usb: dwc3: meson-g12a: fix shared reset control use Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 030/217] USB: ehci_brcm_hub_control: Improve port index sanitizing Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 031/217] usb: gadget: f_fs: Use stream_open() for endpoint files Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 032/217] psi: Fix PSI_MEM_FULL state when tasks are in memstall and doing reclaim Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 033/217] drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 034/217] amd: lance: use eth_hw_addr_set() Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 035/217] amd: ni65: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 036/217] amd: a2065/ariadne: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 037/217] amd: hplance: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 038/217] amd: atarilance: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 039/217] amd: mvme147: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 040/217] 8390: smc-ultra: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 041/217] 8390: hydra: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 042/217] 8390: mac8390: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 043/217] 8390: wd: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 044/217] smc9194: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 045/217] lasi_82594: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 046/217] apple: macmace: " Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 047/217] cirrus: mac89x0: " Sasha Levin
2022-01-18 16:56   ` Jakub Kicinski
2022-01-22 18:51     ` Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 048/217] HID: magicmouse: Report battery level over USB Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 049/217] HID: apple: Do not reset quirks when the Fn key is not found Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 050/217] media: b2c2: Add missing check in flexcop_pci_isr: Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 051/217] libbpf: Accommodate DWARF/compiler bug with duplicated structs Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 052/217] ethernet: renesas: Use div64_ul instead of do_div Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 053/217] 82596: use eth_hw_addr_set() Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 054/217] EDAC/synopsys: Use the quirk for version instead of ddr version Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 055/217] arm64: dts: qcom: sm[68]350: Use interrupts-extended with pdc interrupts Sasha Levin
2022-01-18  2:16 ` [PATCH AUTOSEL 5.16 056/217] arm64: dts: qcom: sm8350: Shorten camera-thermal-bottom name Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 057/217] soc: imx: gpcv2: Synchronously suspend MIX domains Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 058/217] ARM: imx: rename DEBUG_IMX21_IMX27_UART to DEBUG_IMX27_UART Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 059/217] ath11k: Fix mon status ring rx tlv processing Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 060/217] drm/amd/display: check top_pipe_to_program pointer Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 061/217] drm/amdgpu/display: set vblank_disable_immediate for DC Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 062/217] soc: ti: pruss: fix referenced node in error message Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 063/217] mlxsw: pci: Add shutdown method in PCI driver Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 064/217] drm/amd/display: add else to avoid double destroy clk_mgr Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 065/217] drm/bridge: megachips: Ensure both bridges are probed before registration Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 066/217] mxser: keep only !tty test in ISR Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 067/217] mxser: don't throttle manually Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 068/217] mxser: increase buf_overrun if tty_insert_flip_char() fails Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 069/217] serial: 8250_dw: Add StarFive JH7100 quirk Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 070/217] tty: serial: imx: disable UCR4_OREN in .stop_rx() instead of .shutdown() Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 071/217] gpiolib: acpi: Do not set the IRQ type if the IRQ is already in use Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 072/217] HSI: core: Fix return freed object in hsi_new_client Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 073/217] crypto: jitter - consider 32 LSB for APT Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 074/217] rtw89: fix potentially access out of range of RF register array Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 075/217] rtw88: add quirk to disable pci caps on HP 250 G7 Notebook PC Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 076/217] mwifiex: Fix skb_over_panic in mwifiex_usb_recv() Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 077/217] rsi: Fix use-after-free in rsi_rx_done_handler() Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 078/217] rsi: Fix out-of-bounds read in rsi_read_pkt() Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 079/217] ath11k: Avoid NULL ptr access during mgmt tx cleanup Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 080/217] media: venus: avoid calling core_clk_setrate() concurrently during concurrent video sessions Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 081/217] regulator: da9121: Prevent current limit change when enabled Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 082/217] drm/vmwgfx: Release ttm memory if probe fails Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 083/217] drm/vmwgfx: Introduce a new placement for MOB page tables Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 084/217] ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present table Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 085/217] ACPI: Change acpi_device_always_present() into acpi_device_override_status() Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 086/217] ACPI / x86: Allow specifying acpi_device_override_status() quirks by path Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 087/217] ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on the GPD win Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 088/217] drm: Return error codes from struct drm_driver.gem_create_object Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 089/217] drm/amd/display: Use oriented source size when checking cursor scaling Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 090/217] arm64: dts: ti: j7200-main: Fix 'dtbs_check' serdes_ln_ctrl node Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 091/217] arm64: dts: ti: j721e-main: Fix 'dtbs_check' in " Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 092/217] usb: uhci: add aspeed ast2600 uhci support Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 093/217] floppy: Add max size check for user space request Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 094/217] x86/mm: Flush global TLB when switching to trampoline page-table Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 095/217] s390/nmi: add missing __pa/__va address conversion of extended save area Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 096/217] drm: rcar-du: Fix CRTC timings when CMM is used Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 097/217] media: uvcvideo: Increase UVC_CTRL_CONTROL_TIMEOUT to 5 seconds Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 098/217] media: rcar-vin: Update format alignment constraints Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 099/217] media: saa7146: hexium_orion: Fix a NULL pointer dereference in hexium_attach() Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 100/217] media: atomisp: fix "variable dereferenced before check 'asd'" Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 101/217] media: m920x: don't use stack on USB reads Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 102/217] thunderbolt: Runtime PM activate both ends of the device link Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 103/217] arm64: dts: renesas: Fix thermal bindings Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 104/217] iwlwifi: mvm: synchronize with FW after multicast commands Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 105/217] iwlwifi: mvm: avoid clearing a just saved session protection id Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 106/217] iwlwifi: acpi: fix wgds rev 3 size Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 107/217] rcutorture: Avoid soft lockup during cpu stall Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 108/217] net: dsa: ocelot: felix: Remove requirement for PCS in felix devices Sasha Levin
2022-01-18 12:23   ` Vladimir Oltean
2022-01-22 19:02     ` Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 109/217] ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 110/217] ath10k: Fix tx hanging Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 111/217] rtw89: don't kick off TX DMA if failed to write skb Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 112/217] net-sysfs: update the queue counts in the unregistration path Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 113/217] ath10k: drop beacon and probe response which leak from other channel Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 114/217] net: phy: prefer 1000baseT over 1000baseKX Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 115/217] gpio: aspeed: Convert aspeed_gpio.lock to raw_spinlock Sasha Levin
2022-01-18  2:17 ` [PATCH AUTOSEL 5.16 116/217] gpio: aspeed-sgpio: Convert aspeed_sgpio.lock " Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 117/217] selftests/ftrace: make kprobe profile testcase description unique Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 118/217] net: Enable neighbor sysctls that is save for userns root Sasha Levin
2022-01-18 16:59   ` Jakub Kicinski
2022-01-19  3:46     ` David Ahern
2022-01-22 19:13       ` Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 119/217] arm64: dts: rockchip: Fix Bluetooth on ROCK Pi 4 boards Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 120/217] ath11k: Avoid false DEADLOCK warning reported by lockdep Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 121/217] ARM: dts: qcom: sdx55: fix IPA interconnect definitions Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 122/217] x86/mce: Allow instrumentation during task work queueing Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 123/217] x86/mce: Prevent severity computation from being instrumented Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 124/217] x86/mce: Mark mce_panic() noinstr Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 125/217] x86/mce: Mark mce_end() noinstr Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 126/217] x86/mce: Mark mce_read_aux() noinstr Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 127/217] net: bonding: debug: avoid printing debug logs when bond is not notifying peers Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 128/217] kunit: Don't crash if no parameters are generated Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 129/217] bpf: Do not WARN in bpf_warn_invalid_xdp_action() Sasha Levin
2022-01-18  2:18 ` Sasha Levin [this message]
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 131/217] drm/amdgpu: fix amdgpu_ras_mca_query_error_status scope Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 132/217] HID: quirks: Allow inverting the absolute X/Y values Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 133/217] HID: i2c-hid-of: Expose the touchscreen-inverted properties Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 134/217] media: igorplugusb: receiver overflow should be reported Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 135/217] media: rockchip: rkisp1: use device name for debugfs subdir name Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 136/217] media: saa7146: hexium_gemini: Fix a NULL pointer dereference in hexium_attach() Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 137/217] mmc: tmio: reinit card irqs in reset routine Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 138/217] mmc: core: Fixup storing of OCR for MMC_QUIRK_NONSTD_SDIO Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 139/217] mmc: omap_hsmmc: Revert special init for wl1251 Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 140/217] drm/amd/amdgpu: fix psp tmr bo pin count leak in SRIOV Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 141/217] drm/amd/amdgpu: fix gmc " Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 142/217] audit: ensure userspace is penalized the same as the kernel when under pressure Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 143/217] arm64: dts: ls1028a-qds: move rtc node to the correct i2c bus Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 144/217] drm/tegra: dc: rgb: Allow changing PLLD rate on Tegra30+ Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 145/217] arm64: tegra: Adjust length of CCPLEX cluster MMIO region Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 146/217] crypto: ccp - Move SEV_INIT retry for corrupted data Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 147/217] crypto: hisilicon/hpre - fix memory leak in hpre_curve25519_src_init() Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 148/217] crypto: hisilicon/qm - fix deadlock for remove driver Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 149/217] PM: runtime: Add safety net to supplier device release Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 150/217] cpufreq: Fix initialization of min and max frequency QoS requests Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 151/217] usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 152/217] mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy() Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 153/217] mt76: mt7915: fix SMPS operation fail Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 154/217] mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 155/217] mt76: do not pass the received frame with decryption error Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 156/217] mt76: mt7615: improve wmm index allocation Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 157/217] mt76: mt7921: fix network buffer leak by txs missing Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 158/217] ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 159/217] ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 160/217] ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 161/217] rtw88: 8822c: update rx settings to prevent potential hw deadlock Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 162/217] PM: AVS: qcom-cpr: Use div64_ul instead of do_div Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 163/217] iwlwifi: recognize missing PNVM data and then log filename Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 164/217] iwlwifi: fix leaks/bad data after failed firmware load Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 165/217] iwlwifi: remove module loading failure message Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 166/217] iwlwifi: mvm: Fix calculation of frame length Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 167/217] iwlwifi: mvm: fix AUX ROC removal Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 168/217] iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 169/217] mmc: sdhci-pci-gli: GL9755: Support for CD/WP inversion on OF platforms Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 170/217] block: check minor range in device_add_disk() Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 171/217] um: registers: Rename function names to avoid conflicts and build problems Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 172/217] ath11k: Fix napi related hang Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 173/217] Bluetooth: btintel: Add missing quirks and msft ext for legacy bootloader Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 174/217] cpufreq: intel_pstate: Update cpuinfo.max_freq on HWP_CAP changes Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 175/217] Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES Sasha Levin
2022-01-18  2:18 ` [PATCH AUTOSEL 5.16 176/217] xfrm: rate limit SA mapping change message to user space Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 177/217] drm/etnaviv: consider completed fence seqno in hang check Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 178/217] jffs2: GC deadlock reading a page that is used in jffs2_write_begin() Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 179/217] ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 180/217] ACPICA: Utilities: Avoid deleting the same object twice in a row Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 181/217] ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 182/217] ACPICA: Fix wrong interpretation of PCC address Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 183/217] ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 184/217] mmc: mtk-sd: Use readl_poll_timeout instead of open-coded polling Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 185/217] drm/amdgpu: Don't inherit GEM object VMAs in child process Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 186/217] drm/amdgpu: fixup bad vram size on gmc v8 Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 187/217] mfd: intel_soc_pmic: Use CPU-id check instead of _HRV check to differentiate variants Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 188/217] amdgpu/pm: Make sysfs pm attributes as read-only for VFs Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 189/217] ACPI: battery: Add the ThinkPad "Not Charging" quirk Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 190/217] ACPI: CPPC: Check present CPUs for determining _CPC is valid Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 191/217] net/mlx5: DR, Fix error flow in creating matcher Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 192/217] btrfs: remove BUG_ON() in find_parent_nodes() Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 193/217] btrfs: remove BUG_ON(!eie) in find_parent_nodes Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 194/217] net: mdio: Demote probed message to debug print Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 195/217] mac80211: allow non-standard VHT MCS-10/11 Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 196/217] dm btree: add a defensive bounds check to insert_at() Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 197/217] dm space map common: add bounds check to sm_ll_lookup_bitmap() Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 198/217] can: do not increase rx statistics when generating a CAN rx error message frame Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 199/217] bpf/selftests: Fix namespace mount setup in tc_redirect Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 200/217] mlxsw: pci: Avoid flow control for EMAD packets Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 201/217] net: phy: marvell: configure RGMII delays for 88E1118 Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 202/217] net: gemini: allow any RGMII interface mode Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 203/217] net: dsa: hold rtnl_mutex when calling dsa_master_{setup,teardown} Sasha Levin
2022-01-18 12:13   ` Vladimir Oltean
2022-01-22 19:17     ` Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 204/217] regulator: qcom_smd: Align probe function with rpmh-regulator Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 205/217] serial: pl010: Drop CR register reset on set_termios Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 206/217] serial: pl011: " Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 207/217] serial: core: Keep mctrl register state and cached copy in sync Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 208/217] random: do not throw away excess input to crng_fast_load Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 209/217] net/mlx5: Update log_max_qp value to FW max capability Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 210/217] net/mlx5e: Unblock setting vid 0 for VF in case PF isn't eswitch manager Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 211/217] parisc: Avoid calling faulthandler_disabled() twice Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 212/217] scripts: sphinx-pre-install: Fix ctex support on Debian Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 213/217] can: flexcan: allow to change quirks at runtime Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 214/217] can: flexcan: rename RX modes Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 215/217] can: flexcan: add more quirks to describe RX path capabilities Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 216/217] x86/kbuild: Enable CONFIG_KALLSYMS_ALL=y in the defconfigs Sasha Levin
2022-01-18  2:19 ` [PATCH AUTOSEL 5.16 217/217] ext4: allow to change s_last_trim_minblks via sysfs Sasha Levin

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=20220118021940.1942199-130-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=Felix.Kuehling@amd.com \
    --cc=Philip.Yang@amd.com \
    --cc=Xinhui.Pan@amd.com \
    --cc=airlied@linux.ie \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=christian.koenig@amd.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=zhou1615@umn.edu \
    /path/to/YOUR_REPLY

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

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