stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Mikel Rychliski <mikel@mikelr.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Alex Deucher <alexander.deucher@amd.com>,
	Sasha Levin <sashal@kernel.org>,
	amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	nouveau@lists.freedesktop.org, linux-pci@vger.kernel.org
Subject: [PATCH AUTOSEL 5.5 121/121] PCI: Use ioremap(), not phys_to_virt() for platform ROM
Date: Sat, 11 Apr 2020 19:07:06 -0400	[thread overview]
Message-ID: <20200411230706.23855-121-sashal@kernel.org> (raw)
In-Reply-To: <20200411230706.23855-1-sashal@kernel.org>

From: Mikel Rychliski <mikel@mikelr.com>

[ Upstream commit 72e0ef0e5f067fd991f702f0b2635d911d0cf208 ]

On some EFI systems, the video BIOS is provided by the EFI firmware.  The
boot stub code stores the physical address of the ROM image in pdev->rom.
Currently we attempt to access this pointer using phys_to_virt(), which
doesn't work with CONFIG_HIGHMEM.

On these systems, attempting to load the radeon module on a x86_32 kernel
can result in the following:

  BUG: unable to handle page fault for address: 3e8ed03c
  #PF: supervisor read access in kernel mode
  #PF: error_code(0x0000) - not-present page
  *pde = 00000000
  Oops: 0000 [#1] PREEMPT SMP
  CPU: 0 PID: 317 Comm: systemd-udevd Not tainted 5.6.0-rc3-next-20200228 #2
  Hardware name: Apple Computer, Inc. MacPro1,1/Mac-F4208DC8, BIOS     MP11.88Z.005C.B08.0707021221 07/02/07
  EIP: radeon_get_bios+0x5ed/0xe50 [radeon]
  Code: 00 00 84 c0 0f 85 12 fd ff ff c7 87 64 01 00 00 00 00 00 00 8b 47 08 8b 55 b0 e8 1e 83 e1 d6 85 c0 74 1a 8b 55 c0 85 d2 74 13 <80> 38 55 75 0e 80 78 01 aa 0f 84 a4 03 00 00 8d 74 26 00 68 dc 06
  EAX: 3e8ed03c EBX: 00000000 ECX: 3e8ed03c EDX: 00010000
  ESI: 00040000 EDI: eec04000 EBP: eef3fc60 ESP: eef3fbe0
  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 EFLAGS: 00010206
  CR0: 80050033 CR2: 3e8ed03c CR3: 2ec77000 CR4: 000006d0
  Call Trace:
   r520_init+0x26/0x240 [radeon]
   radeon_device_init+0x533/0xa50 [radeon]
   radeon_driver_load_kms+0x80/0x220 [radeon]
   drm_dev_register+0xa7/0x180 [drm]
   radeon_pci_probe+0x10f/0x1a0 [radeon]
   pci_device_probe+0xd4/0x140

Fix the issue by updating all drivers which can access a platform provided
ROM. Instead of calling the helper function pci_platform_rom() which uses
phys_to_virt(), call ioremap() directly on the pdev->rom.

radeon_read_platform_bios() previously directly accessed an __iomem
pointer. Avoid this by calling memcpy_fromio() instead of kmemdup().

pci_platform_rom() now has no remaining callers, so remove it.

Link: https://lore.kernel.org/r/20200319021623.5426-1-mikel@mikelr.com
Signed-off-by: Mikel Rychliski <mikel@mikelr.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c      | 31 +++++++++++--------
 .../drm/nouveau/nvkm/subdev/bios/shadowpci.c  | 17 ++++++++--
 drivers/gpu/drm/radeon/radeon_bios.c          | 30 +++++++++++-------
 drivers/pci/rom.c                             | 17 ----------
 include/linux/pci.h                           |  1 -
 5 files changed, 52 insertions(+), 44 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c
index 50dff69a0f6e3..b1172d93c99c3 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c
@@ -192,30 +192,35 @@ static bool amdgpu_read_bios_from_rom(struct amdgpu_device *adev)
 
 static bool amdgpu_read_platform_bios(struct amdgpu_device *adev)
 {
-	uint8_t __iomem *bios;
-	size_t size;
+	phys_addr_t rom = adev->pdev->rom;
+	size_t romlen = adev->pdev->romlen;
+	void __iomem *bios;
 
 	adev->bios = NULL;
 
-	bios = pci_platform_rom(adev->pdev, &size);
-	if (!bios) {
+	if (!rom || romlen == 0)
 		return false;
-	}
 
-	adev->bios = kzalloc(size, GFP_KERNEL);
-	if (adev->bios == NULL)
+	adev->bios = kzalloc(romlen, GFP_KERNEL);
+	if (!adev->bios)
 		return false;
 
-	memcpy_fromio(adev->bios, bios, size);
+	bios = ioremap(rom, romlen);
+	if (!bios)
+		goto free_bios;
 
-	if (!check_atom_bios(adev->bios, size)) {
-		kfree(adev->bios);
-		return false;
-	}
+	memcpy_fromio(adev->bios, bios, romlen);
+	iounmap(bios);
 
-	adev->bios_size = size;
+	if (!check_atom_bios(adev->bios, romlen))
+		goto free_bios;
+
+	adev->bios_size = romlen;
 
 	return true;
+free_bios:
+	kfree(adev->bios);
+	return false;
 }
 
 #ifdef CONFIG_ACPI
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.c b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.c
index 9b91da09dc5f8..8d9812a51ef63 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.c
@@ -101,9 +101,13 @@ platform_init(struct nvkm_bios *bios, const char *name)
 	else
 		return ERR_PTR(-ENODEV);
 
+	if (!pdev->rom || pdev->romlen == 0)
+		return ERR_PTR(-ENODEV);
+
 	if ((priv = kmalloc(sizeof(*priv), GFP_KERNEL))) {
+		priv->size = pdev->romlen;
 		if (ret = -ENODEV,
-		    (priv->rom = pci_platform_rom(pdev, &priv->size)))
+		    (priv->rom = ioremap(pdev->rom, pdev->romlen)))
 			return priv;
 		kfree(priv);
 	}
@@ -111,11 +115,20 @@ platform_init(struct nvkm_bios *bios, const char *name)
 	return ERR_PTR(ret);
 }
 
+static void
+platform_fini(void *data)
+{
+	struct priv *priv = data;
+
+	iounmap(priv->rom);
+	kfree(priv);
+}
+
 const struct nvbios_source
 nvbios_platform = {
 	.name = "PLATFORM",
 	.init = platform_init,
-	.fini = (void(*)(void *))kfree,
+	.fini = platform_fini,
 	.read = pcirom_read,
 	.rw = true,
 };
diff --git a/drivers/gpu/drm/radeon/radeon_bios.c b/drivers/gpu/drm/radeon/radeon_bios.c
index 4d1490fbb0750..756a50e8aff20 100644
--- a/drivers/gpu/drm/radeon/radeon_bios.c
+++ b/drivers/gpu/drm/radeon/radeon_bios.c
@@ -108,25 +108,33 @@ static bool radeon_read_bios(struct radeon_device *rdev)
 
 static bool radeon_read_platform_bios(struct radeon_device *rdev)
 {
-	uint8_t __iomem *bios;
-	size_t size;
+	phys_addr_t rom = rdev->pdev->rom;
+	size_t romlen = rdev->pdev->romlen;
+	void __iomem *bios;
 
 	rdev->bios = NULL;
 
-	bios = pci_platform_rom(rdev->pdev, &size);
-	if (!bios) {
+	if (!rom || romlen == 0)
 		return false;
-	}
 
-	if (size == 0 || bios[0] != 0x55 || bios[1] != 0xaa) {
+	rdev->bios = kzalloc(romlen, GFP_KERNEL);
+	if (!rdev->bios)
 		return false;
-	}
-	rdev->bios = kmemdup(bios, size, GFP_KERNEL);
-	if (rdev->bios == NULL) {
-		return false;
-	}
+
+	bios = ioremap(rom, romlen);
+	if (!bios)
+		goto free_bios;
+
+	memcpy_fromio(rdev->bios, bios, romlen);
+	iounmap(bios);
+
+	if (rdev->bios[0] != 0x55 || rdev->bios[1] != 0xaa)
+		goto free_bios;
 
 	return true;
+free_bios:
+	kfree(rdev->bios);
+	return false;
 }
 
 #ifdef CONFIG_ACPI
diff --git a/drivers/pci/rom.c b/drivers/pci/rom.c
index 137bf0cee897c..8fc9a4e911e3a 100644
--- a/drivers/pci/rom.c
+++ b/drivers/pci/rom.c
@@ -195,20 +195,3 @@ void pci_unmap_rom(struct pci_dev *pdev, void __iomem *rom)
 		pci_disable_rom(pdev);
 }
 EXPORT_SYMBOL(pci_unmap_rom);
-
-/**
- * pci_platform_rom - provides a pointer to any ROM image provided by the
- * platform
- * @pdev: pointer to pci device struct
- * @size: pointer to receive size of pci window over ROM
- */
-void __iomem *pci_platform_rom(struct pci_dev *pdev, size_t *size)
-{
-	if (pdev->rom && pdev->romlen) {
-		*size = pdev->romlen;
-		return phys_to_virt((phys_addr_t)pdev->rom);
-	}
-
-	return NULL;
-}
-EXPORT_SYMBOL(pci_platform_rom);
diff --git a/include/linux/pci.h b/include/linux/pci.h
index 930fab2930736..73d97d12c9b11 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -1213,7 +1213,6 @@ int pci_enable_rom(struct pci_dev *pdev);
 void pci_disable_rom(struct pci_dev *pdev);
 void __iomem __must_check *pci_map_rom(struct pci_dev *pdev, size_t *size);
 void pci_unmap_rom(struct pci_dev *pdev, void __iomem *rom);
-void __iomem __must_check *pci_platform_rom(struct pci_dev *pdev, size_t *size);
 
 /* Power management related routines */
 int pci_save_state(struct pci_dev *dev);
-- 
2.20.1


      parent reply	other threads:[~2020-04-11 23:33 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-11 23:05 [PATCH AUTOSEL 5.5 001/121] net: wan: wanxl: use allow to pass CROSS_COMPILE_M68k for rebuilding firmware Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 002/121] netfilter: ctnetlink: be more strict when NF_CONNTRACK_MARK is not set Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 003/121] net: axienet: Convert DMA error handler to a work queue Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 004/121] net: phy: probe PHY drivers synchronously Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 005/121] RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 006/121] mmc: sdhci-esdhc-imx: restore pin state when resume back Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 007/121] mmc: sdhci: do not enable card detect interrupt for gpio cd type Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 008/121] serial: 8250_omap: Fix sleeping function called from invalid context during probe Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 009/121] ionic: check for NULL structs on teardown Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 010/121] net: phy: mscc: accept all RGMII species in vsc85xx_mac_if_set Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 011/121] tools/power/x86/intel-speed-select: Fix mailbox usage for CLOS_PM_QOS_CONFIG Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 012/121] platform/x86: asus_wmi: Fix return value of fan_boost_mode_store Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 013/121] drm/amd/display: Explicitly disable triplebuffer flips Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 014/121] HID: lg-g15: Do not fail the probe when we fail to disable F# emulation Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 015/121] RDMA/bnxt_re: Fix lifetimes in bnxt_re_task Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 016/121] RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 017/121] RDMA/cm: Add missing locking around id.state in cm_dup_req_handler Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 018/121] selftests/bpf: Fix test_progs's parsing of test numbers Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 019/121] net/mlx5: E-Switch, Hold mutex when querying drop counter in legacy mode Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 020/121] libbpf: Ignore incompatible types with matching name during CO-RE relocation Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 021/121] NTB: set peer_sta within event handler itself Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 022/121] ntb_tool: Fix printk format Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 023/121] ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 024/121] mwifiex: set needed_headroom, not hard_header_len Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 025/121] Bluetooth: L2CAP: handle l2cap config request during open state Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 026/121] drm/tegra: dc: Release PM and RGB output when client's registration fails Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 027/121] ath10k: fix not registering airtime of 11a station with WMM disable Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 028/121] drm/amd/display: Stop if retimer is not available Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 029/121] net/mlx5e: Init ethtool steering for representors Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 030/121] drm/amd/display: writing stereo polarity register if swapped Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 031/121] Bluetooth: Fix calculation of SCO handle for packet processing Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 032/121] net: rmnet: add missing module alias Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 033/121] drm/amd/display: Fix default logger mask definition Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 034/121] IB/mlx5: Fix missing congestion control debugfs on rep rdma device Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 035/121] Bluetooth: guard against controllers sending zero'd events Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 036/121] Bluetooth: btqca: Fix the NVM baudrate tag offcet for wcn3991 Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 037/121] drm/amd/display: Only round InfoFrame refresh rates Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 038/121] crypto: chelsio - Endianess bug in create_authenc_wr Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 039/121] drm/panel: simple: fix osd070t1718_19ts sync drive edge Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 040/121] net: hns3: modify an unsuitable print when setting unknown duplex to fibre Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 041/121] RDMA/rxe: Fix configuration of atomic queue pair attributes Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 042/121] net: intel: e1000e: fix possible sleep-in-atomic-context bugs in e1000e_get_hw_semaphore() Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 043/121] net: dsa: bcm_sf2: Also configure Port 5 for 2Gb/sec on 7278 Sasha Levin
2020-04-12  1:16   ` Florian Fainelli
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 044/121] sh_eth: check sh_eth_cpu_data::no_tx_cntrs when dumping registers Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 045/121] sh_eth: check sh_eth_cpu_data::cexcr " Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 046/121] sh_eth: check sh_eth_cpu_data::no_xdfar " Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 047/121] ice: Fix implicit queue mapping mode in ice_vsi_get_qs Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 048/121] drm/sun4i: dsi: Use NULL to signify "no panel" Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 049/121] mt76: mt7615: disable 5 GHz on MT7622 Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 050/121] mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 051/121] rtw88: Fix incorrect beamformee role setting Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 052/121] crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 053/121] crypto: tcrypt - fix printed skcipher [a]sync mode Sasha Levin
2020-04-11 23:05 ` [PATCH AUTOSEL 5.5 054/121] RDMA/siw: Fix setting active_mtu attribute Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 055/121] rtw88: 8822c: update power sequence to v16 Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 056/121] drm/omap: fix possible object reference leak Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 057/121] audit: CONFIG_CHANGE don't log internal bookkeeping as an event Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 058/121] Bluetooth: btusb: Add support for 13d3:3548 Realtek 8822CE device Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 059/121] drm/stm: ltdc: check crtc state before enabling LIE Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 060/121] fbdev: potential information leak in do_fb_ioctl() Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 061/121] drm/crc: Actually allow to change the crc source Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 062/121] drm/amdgpu: fix parentheses in amdgpu_vm_update_ptes Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 063/121] drm/amd/display: dc_get_vmid_use_vector() crashes when get called Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 064/121] scsi: lpfc: Fix RQ buffer leakage when no IOCBs available Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 065/121] rsi: fix null pointer dereference during rsi_shutdown() Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 066/121] ASoC: mediatek: mt8183-da7219: pull TDM GPIO pins down when probed Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 067/121] RDMA/hns: Add the workqueue framework for flush cqe handler Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 068/121] mt76: mt7603: fix input validation issues for powersave-filtered frames Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 069/121] drm/amd/display: dal_ddc_i2c_payloads_create can fail causing panic Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 070/121] drm/amd/display: System crashes when add_ptb_to_table() gets called Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 071/121] drm/omap: dss: Cleanup DSS ports on initialisation failure Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 072/121] RDMA/ucma: Put a lock around every call to the rdma_cm layer Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 073/121] scsi: qla2xxx: Handle NVME status iocb correctly Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 074/121] xfs: fix an undefined behaviour in _da3_path_shift Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 075/121] RDMA/siw: Fix passive connection establishment Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 076/121] Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 077/121] xfs: clear PF_MEMALLOC before exiting xfsaild thread Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 078/121] ath10k: start recovery process when read int status fail for sdio Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 079/121] scsi: aacraid: Disabling TM path and only processing IOP reset Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 080/121] scsi: core: avoid repetitive logging of device offline messages Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 081/121] tty: serial: qcom_geni_serial: No need to stop tx/rx on UART shutdown Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 082/121] RDMA/cm: Remove a race freeing timewait_info Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 083/121] KVM: PPC: Book3S HV: Treat TM-related invalid form instructions on P9 like the valid ones Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 084/121] drm/msm: fix leaks if initialization fails Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 085/121] drm/msm/a5xx: Always set an OPP supported hardware value Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 086/121] i2c: dev: Fix the race between the release of i2c_dev and cdev Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 087/121] KVM: PPC: Book3S HV: H_SVM_INIT_START must call UV_RETURN Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 088/121] net: axienet: Propagate failure of DMA descriptor setup Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 089/121] brcmfmac: Fix driver crash on USB control transfer timeout Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 090/121] brcmfmac: Fix double freeing in the fmac usb data path Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 091/121] brcmfmac: fix the incorrect return value in brcmf_inform_single_bss() Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 092/121] xfrm: add prep for esp beet mode offload Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 093/121] xfs: prohibit fs freezing when using empty transactions Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 094/121] RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 095/121] netfilter: nf_tables: silence a RCU-list warning in nft_table_lookup() Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 096/121] crypto/chtls: Fix chtls crash in connection cleanup Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 097/121] ASoC: stm32: spdifrx: fix regmap status check Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 098/121] ASoC: Intel: Skylake: Enable codec wakeup during chip init Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 099/121] scsi: qla2xxx: Return appropriate failure through BSG Interface Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 100/121] scsi: qla2xxx: fix FW resource count values Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 101/121] of: of_reserved_mem: Increase limit on number of reserved regions Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 102/121] dmaengine: stm32-dma: use reset controller only at probe time Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 103/121] scsi: qla2xxx: Add fixes for mailbox command Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 104/121] scsi: qla2xxx: Fix control flags for login/logout IOCB Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 105/121] scsi: qla2xxx: Fix qla2x00_echo_test() based on ISP type Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 106/121] scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 107/121] ARM: shmobile: Enable ARM_GLOBAL_TIMER on Cortex-A9 MPCore SoCs Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 108/121] arm64: dts: qcom: msm8916-samsung-a2015: Reserve Samsung firmware memory Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 109/121] PCI: hv: Add missing kfree(hbus) in hv_pci_probe()'s error handling path Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 110/121] bus: hisi_lpc: Fixup IO ports addresses to avoid use-after-free in host removal Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 111/121] arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 112/121] rtc: cmos: Use spin_lock_irqsave() in cmos_interrupt() Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 113/121] powerpc/book3s64: Fix error handling in mm_iommu_do_alloc() Sasha Levin
2020-04-11 23:06 ` [PATCH AUTOSEL 5.5 114/121] arm64: dts: qcom: msm8998-mtp: Disable funnel 4 and 5 Sasha Levin
2020-04-11 23:07 ` [PATCH AUTOSEL 5.5 115/121] nfsd: Don't add locks to closed or closing open stateids Sasha Levin
2020-04-11 23:07 ` [PATCH AUTOSEL 5.5 116/121] ext4: check for non-zero journal inum in ext4_calculate_overhead Sasha Levin
2020-04-11 23:07 ` [PATCH AUTOSEL 5.5 117/121] ext4: avoid ENOSPC when avoiding to reuse recently deleted inodes Sasha Levin
2020-04-11 23:07 ` [PATCH AUTOSEL 5.5 118/121] powerpc/pseries: Handle UE event for memcpy_mcsafe Sasha Levin
2020-04-11 23:07 ` [PATCH AUTOSEL 5.5 119/121] svcrdma: Fix leak of transport addresses Sasha Levin
2020-04-11 23:07 ` [PATCH AUTOSEL 5.5 120/121] rtc: imx-sc: Align imx sc msg structs to 4 Sasha Levin
2020-04-11 23:07 ` Sasha Levin [this message]

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=20200411230706.23855-121-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bhelgaas@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=mikel@mikelr.com \
    --cc=nouveau@lists.freedesktop.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).