<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/gpu, branch v4.14.147</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2)</title>
<updated>2019-10-05T10:48:03+00:00</updated>
<author>
<name>Ahzo</name>
<email>Ahzo@tutanota.com</email>
</author>
<published>2019-08-05T19:14:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=00012b2925e58d01e002a26389e3f0506f57da02'/>
<id>00012b2925e58d01e002a26389e3f0506f57da02</id>
<content type='text'>
[ Upstream commit f659bb6dae58c113805f92822e4c16ddd3156b79 ]

This fixes screen corruption/flickering on 75 Hz displays.

v2: make print statement debug only (Alex)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102646
Reviewed-by: Evan Quan &lt;evan.quan@amd.com&gt;
Signed-off-by: Ahzo &lt;Ahzo@tutanota.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit f659bb6dae58c113805f92822e4c16ddd3156b79 ]

This fixes screen corruption/flickering on 75 Hz displays.

v2: make print statement debug only (Alex)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102646
Reviewed-by: Evan Quan &lt;evan.quan@amd.com&gt;
Signed-off-by: Ahzo &lt;Ahzo@tutanota.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm: Flush output polling on shutdown</title>
<updated>2019-10-05T10:47:38+00:00</updated>
<author>
<name>Chris Wilson</name>
<email>chris@chris-wilson.co.uk</email>
</author>
<published>2019-06-03T13:58:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=6bcef69aed2362940365c077c9a491280c1c3a83'/>
<id>6bcef69aed2362940365c077c9a491280c1c3a83</id>
<content type='text'>
[ Upstream commit 3b295cb1a411d9c82bbfaa66bc17a8508716ed07 ]

We need to mark the output polling as disabled to prevent concurrent
irqs from queuing new work as shutdown the probe -- causing that work to
execute after we have freed the structs:

&lt;4&gt; [341.846490] DEBUG_LOCKS_WARN_ON(mutex_is_locked(lock))
&lt;4&gt; [341.846497] WARNING: CPU: 3 PID: 3300 at kernel/locking/mutex-debug.c:103 mutex_destroy+0x49/0x50
&lt;4&gt; [341.846508] Modules linked in: i915(-) vgem thunderbolt snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic mei_hdcp x86_pkg_temp_thermal coretemp crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_hda_codec snd_hwdep snd_hda_core snd_pcm mcs7830 btusb usbnet btrtl mii btbcm btintel bluetooth ecdh_generic ecc mei_me mei prime_numbers i2c_hid pinctrl_sunrisepoint pinctrl_intel [last unloaded: i915]
&lt;4&gt; [341.846546] CPU: 3 PID: 3300 Comm: i915_module_loa Tainted: G     U            5.2.0-rc2-CI-CI_DRM_6175+ #1
&lt;4&gt; [341.846553] Hardware name: Dell Inc. XPS 13 9360/0823VW, BIOS 2.9.0 07/09/2018
&lt;4&gt; [341.846560] RIP: 0010:mutex_destroy+0x49/0x50
&lt;4&gt; [341.846565] Code: 00 00 5b c3 e8 a8 9f 3b 00 85 c0 74 ed 8b 05 3e 55 23 01 85 c0 75 e3 48 c7 c6 00 d0 08 82 48 c7 c7 a8 aa 07 82 e8 e7 08 fa ff &lt;0f&gt; 0b eb cc 0f 1f 00 48 b8 11 11 11 11 11 11 11 11 48 89 76 20 48
&lt;4&gt; [341.846578] RSP: 0018:ffffc900006cfdb0 EFLAGS: 00010286
&lt;4&gt; [341.846583] RAX: 0000000000000000 RBX: ffff88826759a168 RCX: 0000000000000000
&lt;4&gt; [341.846589] RDX: 0000000000000002 RSI: 0000000000000000 RDI: ffffffff8112844c
&lt;4&gt; [341.846595] RBP: ffff8882708fa548 R08: 0000000000000000 R09: 0000000000039600
&lt;4&gt; [341.846601] R10: 0000000000000000 R11: 0000000000000ce4 R12: ffffffffa07de1e0
&lt;4&gt; [341.846607] R13: 0000000000000000 R14: 0000000000000000 R15: ffffffffa07de2d0
&lt;4&gt; [341.846613] FS:  00007f62b5ae0e40(0000) GS:ffff888276380000(0000) knlGS:0000000000000000
&lt;4&gt; [341.846620] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
&lt;4&gt; [341.846626] CR2: 000055a4e064f4a0 CR3: 0000000266b16006 CR4: 00000000003606e0
&lt;4&gt; [341.846632] Call Trace:
&lt;4&gt; [341.846639]  drm_fb_helper_fini.part.17+0xb3/0x100
&lt;4&gt; [341.846682]  intel_fbdev_fini+0x20/0x80 [i915]
&lt;4&gt; [341.846722]  intel_modeset_cleanup+0x9a/0x140 [i915]
&lt;4&gt; [341.846750]  i915_driver_unload+0xa3/0x100 [i915]
&lt;4&gt; [341.846778]  i915_pci_remove+0x19/0x30 [i915]
&lt;4&gt; [341.846784]  pci_device_remove+0x36/0xb0
&lt;4&gt; [341.846790]  device_release_driver_internal+0xd3/0x1b0
&lt;4&gt; [341.846795]  driver_detach+0x3f/0x80
&lt;4&gt; [341.846800]  bus_remove_driver+0x53/0xd0
&lt;4&gt; [341.846805]  pci_unregister_driver+0x25/0xa0
&lt;4&gt; [341.846843]  i915_exit+0x16/0x1c [i915]
&lt;4&gt; [341.846849]  __se_sys_delete_module+0x162/0x210
&lt;4&gt; [341.846855]  ? trace_hardirqs_off_thunk+0x1a/0x1c
&lt;4&gt; [341.846859]  ? do_syscall_64+0xd/0x1c0
&lt;4&gt; [341.846864]  do_syscall_64+0x55/0x1c0
&lt;4&gt; [341.846869]  entry_SYSCALL_64_after_hwframe+0x49/0xbe
&lt;4&gt; [341.846875] RIP: 0033:0x7f62b51871b7
&lt;4&gt; [341.846881] Code: 73 01 c3 48 8b 0d d1 8c 2c 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 b8 b0 00 00 00 0f 05 &lt;48&gt; 3d 01 f0 ff ff 73 01 c3 48 8b 0d a1 8c 2c 00 f7 d8 64 89 01 48
&lt;4&gt; [341.846897] RSP: 002b:00007ffe7a227138 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0
&lt;4&gt; [341.846904] RAX: ffffffffffffffda RBX: 00007ffe7a2272b0 RCX: 00007f62b51871b7
&lt;4&gt; [341.846910] RDX: 0000000000000001 RSI: 0000000000000800 RDI: 0000557cd6b55948
&lt;4&gt; [341.846916] RBP: 0000557cd6b558e0 R08: 0000557cd6b5594c R09: 00007ffe7a227160
&lt;4&gt; [341.846922] R10: 00007ffe7a226134 R11: 0000000000000206 R12: 0000000000000000
&lt;4&gt; [341.846927] R13: 00007ffe7a227820 R14: 0000000000000000 R15: 0000000000000000
&lt;4&gt; [341.846936] irq event stamp: 3547847
&lt;4&gt; [341.846940] hardirqs last  enabled at (3547847): [&lt;ffffffff819aad2c&gt;] _raw_spin_unlock_irqrestore+0x4c/0x60
&lt;4&gt; [341.846949] hardirqs last disabled at (3547846): [&lt;ffffffff819aab9d&gt;] _raw_spin_lock_irqsave+0xd/0x50
&lt;4&gt; [341.846957] softirqs last  enabled at (3547376): [&lt;ffffffff81c0033a&gt;] __do_softirq+0x33a/0x4b9
&lt;4&gt; [341.846966] softirqs last disabled at (3547367): [&lt;ffffffff810b6379&gt;] irq_exit+0xa9/0xc0
&lt;4&gt; [341.846973] WARNING: CPU: 3 PID: 3300 at kernel/locking/mutex-debug.c:103 mutex_destroy+0x49/0x50
&lt;4&gt; [341.846980] ---[ end trace ba94ca8952ba970e ]---
&lt;7&gt; [341.866547] [drm:intel_dp_detect [i915]] MST support? port A: no, sink: no, modparam: yes
&lt;7&gt; [341.890480] [drm:drm_add_display_info] non_desktop set to 0
&lt;7&gt; [341.890530] [drm:drm_add_edid_modes] ELD: no CEA Extension found
&lt;7&gt; [341.890537] [drm:drm_add_display_info] non_desktop set to 0
&lt;7&gt; [341.890578] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:86:eDP-1] probed modes :
&lt;7&gt; [341.890589] [drm:drm_mode_debug_printmodeline] Modeline "3200x1800": 60 373250 3200 3248 3280 3360 1800 1803 1808 1852 0x48 0xa
&lt;7&gt; [341.890602] [drm:drm_mode_debug_printmodeline] Modeline "3200x1800": 48 298600 3200 3248 3280 3360 1800 1803 1808 1852 0x40 0xa
&lt;4&gt; [341.890628] general protection fault: 0000 [#1] PREEMPT SMP PTI
&lt;4&gt; [341.890636] CPU: 0 PID: 508 Comm: kworker/0:4 Tainted: G     U  W         5.2.0-rc2-CI-CI_DRM_6175+ #1
&lt;4&gt; [341.890646] Hardware name: Dell Inc. XPS 13 9360/0823VW, BIOS 2.9.0 07/09/2018
&lt;4&gt; [341.890655] Workqueue: events output_poll_execute
&lt;4&gt; [341.890663] RIP: 0010:drm_setup_crtcs+0x13e/0xbe0
&lt;4&gt; [341.890669] Code: 00 41 8b 44 24 58 85 c0 0f 8e f9 01 00 00 44 8b 6c 24 20 44 8b 74 24 28 31 db 31 ed 49 8b 44 24 60 48 63 d5 44 89 ee 83 c5 01 &lt;48&gt; 8b 04 d0 44 89 f2 48 8b 38 48 8b 87 88 01 00 00 48 8b 40 20 e8
&lt;4&gt; [341.890686] RSP: 0018:ffffc9000033fd40 EFLAGS: 00010202
&lt;4&gt; [341.890692] RAX: 6b6b6b6b6b6b6b6b RBX: 0000000000000002 RCX: 0000000000000000
&lt;4&gt; [341.890700] RDX: 0000000000000001 RSI: 0000000000000c80 RDI: 00000000ffffffff
&lt;4&gt; [341.890707] RBP: 0000000000000002 R08: 0000000000000000 R09: 0000000000000000
&lt;4&gt; [341.890715] R10: 0000000000000c80 R11: 0000000000000000 R12: ffff888267599fe8
&lt;4&gt; [341.890722] R13: 0000000000000c80 R14: 0000000000000708 R15: 0000000000000007
&lt;4&gt; [341.890730] FS:  0000000000000000(0000) GS:ffff888276200000(0000) knlGS:0000000000000000
&lt;4&gt; [341.890739] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
&lt;4&gt; [341.890745] CR2: 000055a4e064f4a0 CR3: 000000026d234003 CR4: 00000000003606f0
&lt;4&gt; [341.890752] Call Trace:
&lt;4&gt; [341.890760]  drm_fb_helper_hotplug_event.part.24+0x89/0xb0
&lt;4&gt; [341.890768]  drm_kms_helper_hotplug_event+0x21/0x30
&lt;4&gt; [341.890774]  output_poll_execute+0x9d/0x1a0
&lt;4&gt; [341.890782]  process_one_work+0x245/0x610
&lt;4&gt; [341.890790]  worker_thread+0x37/0x380
&lt;4&gt; [341.890796]  ? process_one_work+0x610/0x610
&lt;4&gt; [341.890802]  kthread+0x119/0x130
&lt;4&gt; [341.890808]  ? kthread_park+0x80/0x80
&lt;4&gt; [341.890815]  ret_from_fork+0x3a/0x50

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109964
Signed-off-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Reviewed-by: Imre Deak &lt;imre.deak@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190603135910.15979-2-chris@chris-wilson.co.uk
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 3b295cb1a411d9c82bbfaa66bc17a8508716ed07 ]

We need to mark the output polling as disabled to prevent concurrent
irqs from queuing new work as shutdown the probe -- causing that work to
execute after we have freed the structs:

&lt;4&gt; [341.846490] DEBUG_LOCKS_WARN_ON(mutex_is_locked(lock))
&lt;4&gt; [341.846497] WARNING: CPU: 3 PID: 3300 at kernel/locking/mutex-debug.c:103 mutex_destroy+0x49/0x50
&lt;4&gt; [341.846508] Modules linked in: i915(-) vgem thunderbolt snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic mei_hdcp x86_pkg_temp_thermal coretemp crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_hda_codec snd_hwdep snd_hda_core snd_pcm mcs7830 btusb usbnet btrtl mii btbcm btintel bluetooth ecdh_generic ecc mei_me mei prime_numbers i2c_hid pinctrl_sunrisepoint pinctrl_intel [last unloaded: i915]
&lt;4&gt; [341.846546] CPU: 3 PID: 3300 Comm: i915_module_loa Tainted: G     U            5.2.0-rc2-CI-CI_DRM_6175+ #1
&lt;4&gt; [341.846553] Hardware name: Dell Inc. XPS 13 9360/0823VW, BIOS 2.9.0 07/09/2018
&lt;4&gt; [341.846560] RIP: 0010:mutex_destroy+0x49/0x50
&lt;4&gt; [341.846565] Code: 00 00 5b c3 e8 a8 9f 3b 00 85 c0 74 ed 8b 05 3e 55 23 01 85 c0 75 e3 48 c7 c6 00 d0 08 82 48 c7 c7 a8 aa 07 82 e8 e7 08 fa ff &lt;0f&gt; 0b eb cc 0f 1f 00 48 b8 11 11 11 11 11 11 11 11 48 89 76 20 48
&lt;4&gt; [341.846578] RSP: 0018:ffffc900006cfdb0 EFLAGS: 00010286
&lt;4&gt; [341.846583] RAX: 0000000000000000 RBX: ffff88826759a168 RCX: 0000000000000000
&lt;4&gt; [341.846589] RDX: 0000000000000002 RSI: 0000000000000000 RDI: ffffffff8112844c
&lt;4&gt; [341.846595] RBP: ffff8882708fa548 R08: 0000000000000000 R09: 0000000000039600
&lt;4&gt; [341.846601] R10: 0000000000000000 R11: 0000000000000ce4 R12: ffffffffa07de1e0
&lt;4&gt; [341.846607] R13: 0000000000000000 R14: 0000000000000000 R15: ffffffffa07de2d0
&lt;4&gt; [341.846613] FS:  00007f62b5ae0e40(0000) GS:ffff888276380000(0000) knlGS:0000000000000000
&lt;4&gt; [341.846620] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
&lt;4&gt; [341.846626] CR2: 000055a4e064f4a0 CR3: 0000000266b16006 CR4: 00000000003606e0
&lt;4&gt; [341.846632] Call Trace:
&lt;4&gt; [341.846639]  drm_fb_helper_fini.part.17+0xb3/0x100
&lt;4&gt; [341.846682]  intel_fbdev_fini+0x20/0x80 [i915]
&lt;4&gt; [341.846722]  intel_modeset_cleanup+0x9a/0x140 [i915]
&lt;4&gt; [341.846750]  i915_driver_unload+0xa3/0x100 [i915]
&lt;4&gt; [341.846778]  i915_pci_remove+0x19/0x30 [i915]
&lt;4&gt; [341.846784]  pci_device_remove+0x36/0xb0
&lt;4&gt; [341.846790]  device_release_driver_internal+0xd3/0x1b0
&lt;4&gt; [341.846795]  driver_detach+0x3f/0x80
&lt;4&gt; [341.846800]  bus_remove_driver+0x53/0xd0
&lt;4&gt; [341.846805]  pci_unregister_driver+0x25/0xa0
&lt;4&gt; [341.846843]  i915_exit+0x16/0x1c [i915]
&lt;4&gt; [341.846849]  __se_sys_delete_module+0x162/0x210
&lt;4&gt; [341.846855]  ? trace_hardirqs_off_thunk+0x1a/0x1c
&lt;4&gt; [341.846859]  ? do_syscall_64+0xd/0x1c0
&lt;4&gt; [341.846864]  do_syscall_64+0x55/0x1c0
&lt;4&gt; [341.846869]  entry_SYSCALL_64_after_hwframe+0x49/0xbe
&lt;4&gt; [341.846875] RIP: 0033:0x7f62b51871b7
&lt;4&gt; [341.846881] Code: 73 01 c3 48 8b 0d d1 8c 2c 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 b8 b0 00 00 00 0f 05 &lt;48&gt; 3d 01 f0 ff ff 73 01 c3 48 8b 0d a1 8c 2c 00 f7 d8 64 89 01 48
&lt;4&gt; [341.846897] RSP: 002b:00007ffe7a227138 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0
&lt;4&gt; [341.846904] RAX: ffffffffffffffda RBX: 00007ffe7a2272b0 RCX: 00007f62b51871b7
&lt;4&gt; [341.846910] RDX: 0000000000000001 RSI: 0000000000000800 RDI: 0000557cd6b55948
&lt;4&gt; [341.846916] RBP: 0000557cd6b558e0 R08: 0000557cd6b5594c R09: 00007ffe7a227160
&lt;4&gt; [341.846922] R10: 00007ffe7a226134 R11: 0000000000000206 R12: 0000000000000000
&lt;4&gt; [341.846927] R13: 00007ffe7a227820 R14: 0000000000000000 R15: 0000000000000000
&lt;4&gt; [341.846936] irq event stamp: 3547847
&lt;4&gt; [341.846940] hardirqs last  enabled at (3547847): [&lt;ffffffff819aad2c&gt;] _raw_spin_unlock_irqrestore+0x4c/0x60
&lt;4&gt; [341.846949] hardirqs last disabled at (3547846): [&lt;ffffffff819aab9d&gt;] _raw_spin_lock_irqsave+0xd/0x50
&lt;4&gt; [341.846957] softirqs last  enabled at (3547376): [&lt;ffffffff81c0033a&gt;] __do_softirq+0x33a/0x4b9
&lt;4&gt; [341.846966] softirqs last disabled at (3547367): [&lt;ffffffff810b6379&gt;] irq_exit+0xa9/0xc0
&lt;4&gt; [341.846973] WARNING: CPU: 3 PID: 3300 at kernel/locking/mutex-debug.c:103 mutex_destroy+0x49/0x50
&lt;4&gt; [341.846980] ---[ end trace ba94ca8952ba970e ]---
&lt;7&gt; [341.866547] [drm:intel_dp_detect [i915]] MST support? port A: no, sink: no, modparam: yes
&lt;7&gt; [341.890480] [drm:drm_add_display_info] non_desktop set to 0
&lt;7&gt; [341.890530] [drm:drm_add_edid_modes] ELD: no CEA Extension found
&lt;7&gt; [341.890537] [drm:drm_add_display_info] non_desktop set to 0
&lt;7&gt; [341.890578] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:86:eDP-1] probed modes :
&lt;7&gt; [341.890589] [drm:drm_mode_debug_printmodeline] Modeline "3200x1800": 60 373250 3200 3248 3280 3360 1800 1803 1808 1852 0x48 0xa
&lt;7&gt; [341.890602] [drm:drm_mode_debug_printmodeline] Modeline "3200x1800": 48 298600 3200 3248 3280 3360 1800 1803 1808 1852 0x40 0xa
&lt;4&gt; [341.890628] general protection fault: 0000 [#1] PREEMPT SMP PTI
&lt;4&gt; [341.890636] CPU: 0 PID: 508 Comm: kworker/0:4 Tainted: G     U  W         5.2.0-rc2-CI-CI_DRM_6175+ #1
&lt;4&gt; [341.890646] Hardware name: Dell Inc. XPS 13 9360/0823VW, BIOS 2.9.0 07/09/2018
&lt;4&gt; [341.890655] Workqueue: events output_poll_execute
&lt;4&gt; [341.890663] RIP: 0010:drm_setup_crtcs+0x13e/0xbe0
&lt;4&gt; [341.890669] Code: 00 41 8b 44 24 58 85 c0 0f 8e f9 01 00 00 44 8b 6c 24 20 44 8b 74 24 28 31 db 31 ed 49 8b 44 24 60 48 63 d5 44 89 ee 83 c5 01 &lt;48&gt; 8b 04 d0 44 89 f2 48 8b 38 48 8b 87 88 01 00 00 48 8b 40 20 e8
&lt;4&gt; [341.890686] RSP: 0018:ffffc9000033fd40 EFLAGS: 00010202
&lt;4&gt; [341.890692] RAX: 6b6b6b6b6b6b6b6b RBX: 0000000000000002 RCX: 0000000000000000
&lt;4&gt; [341.890700] RDX: 0000000000000001 RSI: 0000000000000c80 RDI: 00000000ffffffff
&lt;4&gt; [341.890707] RBP: 0000000000000002 R08: 0000000000000000 R09: 0000000000000000
&lt;4&gt; [341.890715] R10: 0000000000000c80 R11: 0000000000000000 R12: ffff888267599fe8
&lt;4&gt; [341.890722] R13: 0000000000000c80 R14: 0000000000000708 R15: 0000000000000007
&lt;4&gt; [341.890730] FS:  0000000000000000(0000) GS:ffff888276200000(0000) knlGS:0000000000000000
&lt;4&gt; [341.890739] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
&lt;4&gt; [341.890745] CR2: 000055a4e064f4a0 CR3: 000000026d234003 CR4: 00000000003606f0
&lt;4&gt; [341.890752] Call Trace:
&lt;4&gt; [341.890760]  drm_fb_helper_hotplug_event.part.24+0x89/0xb0
&lt;4&gt; [341.890768]  drm_kms_helper_hotplug_event+0x21/0x30
&lt;4&gt; [341.890774]  output_poll_execute+0x9d/0x1a0
&lt;4&gt; [341.890782]  process_one_work+0x245/0x610
&lt;4&gt; [341.890790]  worker_thread+0x37/0x380
&lt;4&gt; [341.890796]  ? process_one_work+0x610/0x610
&lt;4&gt; [341.890802]  kthread+0x119/0x130
&lt;4&gt; [341.890808]  ? kthread_park+0x80/0x80
&lt;4&gt; [341.890815]  ret_from_fork+0x3a/0x50

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109964
Signed-off-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Reviewed-by: Imre Deak &lt;imre.deak@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190603135910.15979-2-chris@chris-wilson.co.uk
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/mediatek: mtk_drm_drv.c: Add of_node_put() before goto</title>
<updated>2019-09-19T07:08:08+00:00</updated>
<author>
<name>Nishka Dasgupta</name>
<email>nishkadg.linux@gmail.com</email>
</author>
<published>2019-07-06T13:30:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=9251e586a1dffd9f964a2a770f6dc82d175ddcb5'/>
<id>9251e586a1dffd9f964a2a770f6dc82d175ddcb5</id>
<content type='text'>
commit 165d42c012be69900f0e2f8545626cb9e7d4a832 upstream.

Each iteration of for_each_child_of_node puts the previous
node, but in the case of a goto from the middle of the loop, there is
no put, thus causing a memory leak. Hence add an of_node_put before the
goto in two places.
Issue found with Coccinelle.

Fixes: 119f5173628a (drm/mediatek: Add DRM Driver for Mediatek SoC MT8173)

Signed-off-by: Nishka Dasgupta &lt;nishkadg.linux@gmail.com&gt;
Signed-off-by: CK Hu &lt;ck.hu@mediatek.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 165d42c012be69900f0e2f8545626cb9e7d4a832 upstream.

Each iteration of for_each_child_of_node puts the previous
node, but in the case of a goto from the middle of the loop, there is
no put, thus causing a memory leak. Hence add an of_node_put before the
goto in two places.
Issue found with Coccinelle.

Fixes: 119f5173628a (drm/mediatek: Add DRM Driver for Mediatek SoC MT8173)

Signed-off-by: Nishka Dasgupta &lt;nishkadg.linux@gmail.com&gt;
Signed-off-by: CK Hu &lt;ck.hu@mediatek.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>drm/meson: Add support for XBGR8888 &amp; ABGR8888 formats</title>
<updated>2019-09-19T07:08:05+00:00</updated>
<author>
<name>Neil Armstrong</name>
<email>narmstrong@baylibre.com</email>
</author>
<published>2019-04-29T07:52:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=73cacb9bb9ed76ff1bf10688adea5dfc19849d37'/>
<id>73cacb9bb9ed76ff1bf10688adea5dfc19849d37</id>
<content type='text'>
commit 5ffff4415f9eeae834960226770963e2947e17eb upstream.

Add missing XBGR8888 &amp; ABGR8888 formats variants from the primary plane.

Fixes: bbbe775ec5b5 ("drm: Add support for Amlogic Meson Graphic Controller")
Signed-off-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt;
Reviewed-by: Kevin Hilman &lt;khilman@baylibre.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190429075238.7884-1-narmstrong@baylibre.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 5ffff4415f9eeae834960226770963e2947e17eb upstream.

Add missing XBGR8888 &amp; ABGR8888 formats variants from the primary plane.

Fixes: bbbe775ec5b5 ("drm: Add support for Amlogic Meson Graphic Controller")
Signed-off-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt;
Reviewed-by: Kevin Hilman &lt;khilman@baylibre.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190429075238.7884-1-narmstrong@baylibre.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>drm/vmwgfx: Fix double free in vmw_recv_msg()</title>
<updated>2019-09-16T06:20:43+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2019-08-15T08:30:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1fab51be84fdcae2287f34caad1a3828e056c9c1'/>
<id>1fab51be84fdcae2287f34caad1a3828e056c9c1</id>
<content type='text'>
commit 08b0c891605acf727e43e3e03a25857d3e789b61 upstream.

We recently added a kfree() after the end of the loop:

	if (retries == RETRIES) {
		kfree(reply);
		return -EINVAL;
	}

There are two problems.  First the test is wrong and because retries
equals RETRIES if we succeed on the last iteration through the loop.
Second if we fail on the last iteration through the loop then the kfree
is a double free.

When you're reading this code, please note the break statement at the
end of the while loop.  This patch changes the loop so that if it's not
successful then "reply" is NULL and we can test for that afterward.

Cc: &lt;stable@vger.kernel.org&gt;
Fixes: 6b7c3b86f0b6 ("drm/vmwgfx: fix memory leak when too many retries have occurred")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Thomas Hellstrom &lt;thellstrom@vmware.com&gt;
Signed-off-by: Thomas Hellstrom &lt;thellstrom@vmware.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 08b0c891605acf727e43e3e03a25857d3e789b61 upstream.

We recently added a kfree() after the end of the loop:

	if (retries == RETRIES) {
		kfree(reply);
		return -EINVAL;
	}

There are two problems.  First the test is wrong and because retries
equals RETRIES if we succeed on the last iteration through the loop.
Second if we fail on the last iteration through the loop then the kfree
is a double free.

When you're reading this code, please note the break statement at the
end of the while loop.  This patch changes the loop so that if it's not
successful then "reply" is NULL and we can test for that afterward.

Cc: &lt;stable@vger.kernel.org&gt;
Fixes: 6b7c3b86f0b6 ("drm/vmwgfx: fix memory leak when too many retries have occurred")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Thomas Hellstrom &lt;thellstrom@vmware.com&gt;
Signed-off-by: Thomas Hellstrom &lt;thellstrom@vmware.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>drm/mediatek: set DMA max segment size</title>
<updated>2019-09-10T09:32:14+00:00</updated>
<author>
<name>Alexandre Courbot</name>
<email>acourbot@chromium.org</email>
</author>
<published>2019-07-29T05:33:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=91910cc0016578a0d9c181d2bb6f7806a07dbf73'/>
<id>91910cc0016578a0d9c181d2bb6f7806a07dbf73</id>
<content type='text'>
[ Upstream commit 070955558e820b9a89c570b91b1f21762f62b288 ]

This driver requires imported PRIME buffers to appear contiguously in
its IO address space. Make sure this is the case by setting the maximum
DMA segment size to a more suitable value than the default 64KB.

Signed-off-by: Alexandre Courbot &lt;acourbot@chromium.org&gt;
Reviewed-by: Tomasz Figa &lt;tfiga@chromium.org&gt;
Signed-off-by: CK Hu &lt;ck.hu@mediatek.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 070955558e820b9a89c570b91b1f21762f62b288 ]

This driver requires imported PRIME buffers to appear contiguously in
its IO address space. Make sure this is the case by setting the maximum
DMA segment size to a more suitable value than the default 64KB.

Signed-off-by: Alexandre Courbot &lt;acourbot@chromium.org&gt;
Reviewed-by: Tomasz Figa &lt;tfiga@chromium.org&gt;
Signed-off-by: CK Hu &lt;ck.hu@mediatek.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/mediatek: use correct device to import PRIME buffers</title>
<updated>2019-09-10T09:32:14+00:00</updated>
<author>
<name>Alexandre Courbot</name>
<email>acourbot@chromium.org</email>
</author>
<published>2019-07-29T05:33:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5655a71f8252f7681445df58701b9a93b3860269'/>
<id>5655a71f8252f7681445df58701b9a93b3860269</id>
<content type='text'>
[ Upstream commit 4c6f3196e6ea111c456c6086dc3f57d4706b0b2d ]

PRIME buffers should be imported using the DMA device. To this end, use
a custom import function that mimics drm_gem_prime_import_dev(), but
passes the correct device.

Fixes: 119f5173628aa ("drm/mediatek: Add DRM Driver for Mediatek SoC MT8173.")
Signed-off-by: Alexandre Courbot &lt;acourbot@chromium.org&gt;
Signed-off-by: CK Hu &lt;ck.hu@mediatek.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 4c6f3196e6ea111c456c6086dc3f57d4706b0b2d ]

PRIME buffers should be imported using the DMA device. To this end, use
a custom import function that mimics drm_gem_prime_import_dev(), but
passes the correct device.

Fixes: 119f5173628aa ("drm/mediatek: Add DRM Driver for Mediatek SoC MT8173.")
Signed-off-by: Alexandre Courbot &lt;acourbot@chromium.org&gt;
Signed-off-by: CK Hu &lt;ck.hu@mediatek.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915: Don't deballoon unused ggtt drm_mm_node in linux guest</title>
<updated>2019-09-06T08:20:59+00:00</updated>
<author>
<name>Xiong Zhang</name>
<email>xiong.y.zhang@intel.com</email>
</author>
<published>2019-08-20T05:46:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=fdd176296f35c8810bb45b8a8c1e5df93f01fbd4'/>
<id>fdd176296f35c8810bb45b8a8c1e5df93f01fbd4</id>
<content type='text'>
commit 0a3dfbb5cd9033752639ef33e319c2f2863c713a upstream.

The following call trace may exist in linux guest dmesg when guest i915
driver is unloaded.
[   90.776610] [drm:vgt_deballoon_space.isra.0 [i915]] deballoon space: range [0x0 - 0x0] 0 KiB.
[   90.776621] BUG: unable to handle kernel NULL pointer dereference at 00000000000000c0
[   90.776691] IP: drm_mm_remove_node+0x4d/0x320 [drm]
[   90.776718] PGD 800000012c7d0067 P4D 800000012c7d0067 PUD 138e4c067 PMD 0
[   90.777091] task: ffff9adab60f2f00 task.stack: ffffaf39c0fe0000
[   90.777142] RIP: 0010:drm_mm_remove_node+0x4d/0x320 [drm]
[   90.777573] Call Trace:
[   90.777653]  intel_vgt_deballoon+0x4c/0x60 [i915]
[   90.777729]  i915_ggtt_cleanup_hw+0x121/0x190 [i915]
[   90.777792]  i915_driver_unload+0x145/0x180 [i915]
[   90.777856]  i915_pci_remove+0x15/0x20 [i915]
[   90.777890]  pci_device_remove+0x3b/0xc0
[   90.777916]  device_release_driver_internal+0x157/0x220
[   90.777945]  driver_detach+0x39/0x70
[   90.777967]  bus_remove_driver+0x51/0xd0
[   90.777990]  pci_unregister_driver+0x23/0x90
[   90.778019]  SyS_delete_module+0x1da/0x240
[   90.778045]  entry_SYSCALL_64_fastpath+0x24/0x87
[   90.778072] RIP: 0033:0x7f34312af067
[   90.778092] RSP: 002b:00007ffdea3da0d8 EFLAGS: 00000206
[   90.778297] RIP: drm_mm_remove_node+0x4d/0x320 [drm] RSP: ffffaf39c0fe3dc0
[   90.778344] ---[ end trace f4b1bc8305fc59dd ]---

Four drm_mm_node are used to reserve guest ggtt space, but some of them
may be skipped and not initialised due to space constraints in
intel_vgt_balloon(). If drm_mm_remove_node() is called with
uninitialized drm_mm_node, the above call trace occurs.

This patch check drm_mm_node's validity before calling
drm_mm_remove_node().

Fixes: ff8f797557c7("drm/i915: return the correct usable aperture size under gvt environment")
Cc: stable@vger.kernel.org
Signed-off-by: Xiong Zhang &lt;xiong.y.zhang@intel.com&gt;
Acked-by: Zhenyu Wang &lt;zhenyuw@linux.intel.com&gt;
Reviewed-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Signed-off-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/1566279978-9659-1-git-send-email-xiong.y.zhang@intel.com
(cherry picked from commit 4776f3529d6b1e47f02904ad1d264d25ea22b27b)
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 0a3dfbb5cd9033752639ef33e319c2f2863c713a upstream.

The following call trace may exist in linux guest dmesg when guest i915
driver is unloaded.
[   90.776610] [drm:vgt_deballoon_space.isra.0 [i915]] deballoon space: range [0x0 - 0x0] 0 KiB.
[   90.776621] BUG: unable to handle kernel NULL pointer dereference at 00000000000000c0
[   90.776691] IP: drm_mm_remove_node+0x4d/0x320 [drm]
[   90.776718] PGD 800000012c7d0067 P4D 800000012c7d0067 PUD 138e4c067 PMD 0
[   90.777091] task: ffff9adab60f2f00 task.stack: ffffaf39c0fe0000
[   90.777142] RIP: 0010:drm_mm_remove_node+0x4d/0x320 [drm]
[   90.777573] Call Trace:
[   90.777653]  intel_vgt_deballoon+0x4c/0x60 [i915]
[   90.777729]  i915_ggtt_cleanup_hw+0x121/0x190 [i915]
[   90.777792]  i915_driver_unload+0x145/0x180 [i915]
[   90.777856]  i915_pci_remove+0x15/0x20 [i915]
[   90.777890]  pci_device_remove+0x3b/0xc0
[   90.777916]  device_release_driver_internal+0x157/0x220
[   90.777945]  driver_detach+0x39/0x70
[   90.777967]  bus_remove_driver+0x51/0xd0
[   90.777990]  pci_unregister_driver+0x23/0x90
[   90.778019]  SyS_delete_module+0x1da/0x240
[   90.778045]  entry_SYSCALL_64_fastpath+0x24/0x87
[   90.778072] RIP: 0033:0x7f34312af067
[   90.778092] RSP: 002b:00007ffdea3da0d8 EFLAGS: 00000206
[   90.778297] RIP: drm_mm_remove_node+0x4d/0x320 [drm] RSP: ffffaf39c0fe3dc0
[   90.778344] ---[ end trace f4b1bc8305fc59dd ]---

Four drm_mm_node are used to reserve guest ggtt space, but some of them
may be skipped and not initialised due to space constraints in
intel_vgt_balloon(). If drm_mm_remove_node() is called with
uninitialized drm_mm_node, the above call trace occurs.

This patch check drm_mm_node's validity before calling
drm_mm_remove_node().

Fixes: ff8f797557c7("drm/i915: return the correct usable aperture size under gvt environment")
Cc: stable@vger.kernel.org
Signed-off-by: Xiong Zhang &lt;xiong.y.zhang@intel.com&gt;
Acked-by: Zhenyu Wang &lt;zhenyuw@linux.intel.com&gt;
Reviewed-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Signed-off-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/1566279978-9659-1-git-send-email-xiong.y.zhang@intel.com
(cherry picked from commit 4776f3529d6b1e47f02904ad1d264d25ea22b27b)
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>drm/tilcdc: Register cpufreq notifier after we have initialized crtc</title>
<updated>2019-09-06T08:20:49+00:00</updated>
<author>
<name>Jyri Sarha</name>
<email>jsarha@ti.com</email>
</author>
<published>2018-12-12T17:26:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0d9b9e89ae5a1aa20141fe41c3709149113c4b02'/>
<id>0d9b9e89ae5a1aa20141fe41c3709149113c4b02</id>
<content type='text'>
[ Upstream commit 432973fd3a20102840d5f7e61af9f1a03c217a4c ]

Register cpufreq notifier after we have initialized the crtc and
unregister it before we remove the ctrc. Receiving a cpufreq notify
without crtc causes a crash.

Reported-by: Peter Ujfalusi &lt;peter.ujfalusi@ti.com&gt;
Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 432973fd3a20102840d5f7e61af9f1a03c217a4c ]

Register cpufreq notifier after we have initialized the crtc and
unregister it before we remove the ctrc. Receiving a cpufreq notify
without crtc causes a crash.

Reported-by: Peter Ujfalusi &lt;peter.ujfalusi@ti.com&gt;
Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/bridge: tfp410: fix memleak in get_modes()</title>
<updated>2019-09-06T08:20:47+00:00</updated>
<author>
<name>Tomi Valkeinen</name>
<email>tomi.valkeinen@ti.com</email>
</author>
<published>2019-06-10T13:57:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=d262e6a81729dcf6f6100bb6b5ae87b19050d5d4'/>
<id>d262e6a81729dcf6f6100bb6b5ae87b19050d5d4</id>
<content type='text'>
[ Upstream commit c08f99c39083ab55a9c93b3e93cef48711294dad ]

We don't free the edid blob allocated by the call to drm_get_edid(),
causing a memleak. Fix this by calling kfree(edid) at the end of the
get_modes().

Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
Signed-off-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190610135739.6077-1-tomi.valkeinen@ti.com
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit c08f99c39083ab55a9c93b3e93cef48711294dad ]

We don't free the edid blob allocated by the call to drm_get_edid(),
causing a memleak. Fix this by calling kfree(edid) at the end of the
get_modes().

Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
Signed-off-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190610135739.6077-1-tomi.valkeinen@ti.com
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
