mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: xinhui pan <xinhui.pan@amd.com>, Feifei Xu <FeifeiXu@amd.com>,
	Alex Deucher <alexander.deucher@amd.com>,
	Sasha Levin <sashal@kernel.org>,
	amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: [PATCH AUTOSEL 4.19 49/56] drm/amd/display: Fix a list corruption
Date: Sun, 18 Oct 2020 15:24:10 -0400	[thread overview]
Message-ID: <20201018192417.4055228-49-sashal@kernel.org> (raw)
In-Reply-To: <20201018192417.4055228-1-sashal@kernel.org>

From: xinhui pan <xinhui.pan@amd.com>

[ Upstream commit 1545fbf97eafc1dbdc2923e58b4186b16a834784 ]

Remove the private obj from the internal list before we free aconnector.

[   56.925828] BUG: unable to handle page fault for address: ffff8f84a870a560
[   56.933272] #PF: supervisor read access in kernel mode
[   56.938801] #PF: error_code(0x0000) - not-present page
[   56.944376] PGD 18e605067 P4D 18e605067 PUD 86a614067 PMD 86a4d0067 PTE 800ffff8578f5060
[   56.953260] Oops: 0000 [#1] SMP DEBUG_PAGEALLOC NOPTI
[   56.958815] CPU: 6 PID: 1407 Comm: bash Tainted: G           O      5.9.0-rc2+ #46
[   56.967092] Hardware name: System manufacturer System Product Name/PRIME Z390-A, BIOS 1401 11/26/2019
[   56.977162] RIP: 0010:__list_del_entry_valid+0x31/0xa0
[   56.982768] Code: 00 ad de 55 48 8b 17 4c 8b 47 08 48 89 e5 48 39 c2 74 27 48 b8 22 01 00 00 00 00 ad de 49 39 c0 74 2d 49 8b 30 48 39 fe 75 3d <48> 8b 52 08 48 39 f2 75 4c b8 01 00 00 00 5d c3 48 89 7
[   57.003327] RSP: 0018:ffffb40c81687c90 EFLAGS: 00010246
[   57.009048] RAX: dead000000000122 RBX: ffff8f84ea41f4f0 RCX: 0000000000000006
[   57.016871] RDX: ffff8f84a870a558 RSI: ffff8f84ea41f4f0 RDI: ffff8f84ea41f4f0
[   57.024672] RBP: ffffb40c81687c90 R08: ffff8f84ea400998 R09: 0000000000000001
[   57.032490] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000006
[   57.040287] R13: ffff8f84ea422a90 R14: ffff8f84b4129a20 R15: fffffffffffffff2
[   57.048105] FS:  00007f550d885740(0000) GS:ffff8f8509600000(0000) knlGS:0000000000000000
[   57.056979] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   57.063260] CR2: ffff8f84a870a560 CR3: 00000007e5144001 CR4: 00000000003706e0
[   57.071053] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[   57.078849] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[   57.086684] Call Trace:
[   57.089381]  drm_atomic_private_obj_fini+0x29/0x82 [drm]
[   57.095247]  amdgpu_dm_fini+0x83/0x170 [amdgpu]
[   57.100264]  dm_hw_fini+0x23/0x30 [amdgpu]
[   57.104814]  amdgpu_device_fini+0x1df/0x4fe [amdgpu]
[   57.110271]  amdgpu_driver_unload_kms+0x43/0x70 [amdgpu]
[   57.116136]  amdgpu_pci_remove+0x3b/0x60 [amdgpu]
[   57.121291]  pci_device_remove+0x3e/0xb0
[   57.125583]  device_release_driver_internal+0xff/0x1d0
[   57.131223]  device_release_driver+0x12/0x20
[   57.135903]  pci_stop_bus_device+0x70/0xa0
[   57.140401]  pci_stop_and_remove_bus_device_locked+0x1b/0x30
[   57.146571]  remove_store+0x7b/0x90
[   57.150429]  dev_attr_store+0x17/0x30
[   57.154441]  sysfs_kf_write+0x4b/0x60
[   57.158479]  kernfs_fop_write+0xe8/0x1d0
[   57.162788]  vfs_write+0xf5/0x230
[   57.166426]  ksys_write+0x70/0xf0
[   57.170087]  __x64_sys_write+0x1a/0x20
[   57.174219]  do_syscall_64+0x38/0x90
[   57.178145]  entry_SYSCALL_64_after_hwframe+0x44/0xa9

Signed-off-by: xinhui pan <xinhui.pan@amd.com>
Acked-by: Feifei Xu <Feifei Xu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 3b07a316680c2..b01f3269595e8 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -2877,6 +2877,7 @@ static void amdgpu_dm_connector_destroy(struct drm_connector *connector)
 	struct amdgpu_device *adev = connector->dev->dev_private;
 	struct amdgpu_display_manager *dm = &adev->dm;
 
+	drm_atomic_private_obj_fini(&aconnector->mst_mgr.base);
 #if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) ||\
 	defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE)
 
-- 
2.25.1


  parent reply	other threads:[~2020-10-18 19:25 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-18 19:23 [PATCH AUTOSEL 4.19 01/56] block: ratelimit handle_bad_sector() message Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 02/56] crypto: ccp - fix error handling Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 03/56] media: firewire: fix memory leak Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 04/56] media: ati_remote: sanity check for both endpoints Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 05/56] media: st-delta: Fix reference count leak in delta_run_work Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 06/56] media: sti: Fix reference count leaks Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 07/56] media: exynos4-is: Fix several reference count leaks due to pm_runtime_get_sync Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 08/56] media: exynos4-is: Fix a reference count leak " Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 09/56] media: exynos4-is: Fix a reference count leak Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 10/56] media: vsp1: Fix runtime PM imbalance on error Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 11/56] media: platform: s3c-camif: " Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 12/56] media: platform: sti: hva: " Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 13/56] media: bdisp: " Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 14/56] media: media/pci: prevent memory leak in bttv_probe Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 15/56] media: uvcvideo: Ensure all probed info is returned to v4l2 Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 16/56] seccomp: kill process instead of thread for unknown actions Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 17/56] mmc: sdio: Check for CISTPL_VERS_1 buffer size Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 18/56] media: saa7134: avoid a shift overflow Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 19/56] fs: dlm: fix configfs memory leak Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 20/56] media: venus: core: Fix runtime PM imbalance in venus_probe Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 21/56] ipv6/icmp: l3mdev: Perform icmp error route lookup on source device routing table (v2) Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 22/56] ntfs: add check for mft record size in superblock Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 23/56] ip_gre: set dev->hard_header_len and dev->needed_headroom properly Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 24/56] mac80211: handle lack of sband->bitrates in rates Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 25/56] PM: hibernate: remove the bogus call to get_gendisk() in software_resume() Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 26/56] scsi: mvumi: Fix error return in mvumi_io_attach() Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 27/56] scsi: target: core: Add CONTROL field for trace events Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 28/56] mic: vop: copy data to kernel space then write to io memory Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 29/56] misc: vop: add round_up(x,4) for vring_size to avoid kernel panic Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 30/56] usb: gadget: function: printer: fix use-after-free in __lock_acquire Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 31/56] udf: Limit sparing table size Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 32/56] udf: Avoid accessing uninitialized data on failed inode read Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 33/56] USB: cdc-acm: handle broken union descriptors Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 34/56] usb: dwc3: simple: add support for Hikey 970 Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 35/56] can: flexcan: flexcan_chip_stop(): add error handling and propagate error value Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 36/56] ath9k: hif_usb: fix race condition between usb_get_urb() and usb_kill_anchored_urbs() Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 37/56] misc: rtsx: Fix memory leak in rtsx_pci_probe Sasha Levin
2020-10-18 19:23 ` [PATCH AUTOSEL 4.19 38/56] reiserfs: only call unlock_new_inode() if I_NEW Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 39/56] xfs: make sure the rt allocator doesn't run off the end Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 40/56] usb: ohci: Default to per-port over-current protection Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 41/56] Bluetooth: Only mark socket zapped after unlocking Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 42/56] scsi: ibmvfc: Fix error return in ibmvfc_probe() Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 43/56] brcmsmac: fix memory leak in wlc_phy_attach_lcnphy Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 44/56] rtl8xxxu: prevent potential memory leak Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 45/56] Fix use after free in get_capset_info callback Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 46/56] scsi: qedi: Protect active command list to avoid list corruption Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 47/56] scsi: qedi: Fix list_del corruption while removing active I/O Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 48/56] tty: ipwireless: fix error handling Sasha Levin
2020-10-18 19:24 ` Sasha Levin [this message]
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 50/56] ipvs: Fix uninit-value in do_ip_vs_set_ctl() Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 51/56] reiserfs: Fix memory leak in reiserfs_parse_options() Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 52/56] mwifiex: don't call del_timer_sync() on uninitialized timer Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 53/56] brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 54/56] usb: core: Solve race condition in anchor cleanup functions Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 55/56] scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config() Sasha Levin
2020-10-18 19:24 ` [PATCH AUTOSEL 4.19 56/56] ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() 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=20201018192417.4055228-49-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=FeifeiXu@amd.com \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=xinhui.pan@amd.com \
    /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

all inboxes | Powered by JetHome®