aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/4258-drm-amdgpu-uvd7-add-emit_reg_write_reg_wait-ring-cal.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/4258-drm-amdgpu-uvd7-add-emit_reg_write_reg_wait-ring-cal.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.14.71/4258-drm-amdgpu-uvd7-add-emit_reg_write_reg_wait-ring-cal.patch68
1 files changed, 68 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/4258-drm-amdgpu-uvd7-add-emit_reg_write_reg_wait-ring-cal.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/4258-drm-amdgpu-uvd7-add-emit_reg_write_reg_wait-ring-cal.patch
new file mode 100644
index 00000000..efa40f14
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/4258-drm-amdgpu-uvd7-add-emit_reg_write_reg_wait-ring-cal.patch
@@ -0,0 +1,68 @@
+From fe0e6d3a17b050001b667bec61b540d15be3ba00 Mon Sep 17 00:00:00 2001
+From: Xiaojie Yuan <Xiaojie.Yuan@amd.com>
+Date: Thu, 26 Apr 2018 18:50:26 +0800
+Subject: [PATCH 4258/5725] drm/amdgpu/uvd7: add emit_reg_write_reg_wait ring
+ callback
+
+Fix the NULL pointer dereference while running amdgpu_test:
+
+[ 54.972246] BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
+[ 54.972265] IP: (null)
+[ 54.972273] PGD 0 P4D 0
+[ 54.972280] Oops: 0010 [#1] SMP PTI
+[ 54.972288] Modules linked in: amdkfd amd_iommu_v2 amdgpu(OE) chash gpu_sched ttm drm_kms_helper drm i2c_algo_bit fb_sys_fops syscopyarea sysfillrect sysimgblt snd_hda_codec_realtek snd_hda_codec_generic snd_hda_codec_hdmi snd_hda_intel snd_hda_codec snd_hda_core snd_hwdep intel_rapl snd_pcm snd_seq_midi snd_seq_midi_event snd_rawmidi x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel snd_seq snd_seq_device kvm irqbypass snd_timer crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc snd soundcore joydev input_leds aesni_intel aes_x86_64 crypto_simd glue_helper cryptd idma64 virt_dma mei_me intel_lpss_pci serio_raw intel_cstate intel_rapl_perf shpchp intel_pch_thermal mei mac_hid intel_lpss acpi_pad parport_pc ppdev nfsd lp auth_rpcgss nfs_acl lockd grace sunrpc parport autofs4 hid_generic
+[ 54.972434] usbhid mxm_wmi e1000e psmouse ahci hid libahci wmi pinctrl_sunrisepoint video pinctrl_intel
+[ 54.972457] CPU: 6 PID: 1393 Comm: uvd Tainted: G OE 4.16.0-rc7-27fb84fda777 #1
+[ 54.972473] Hardware name: MSI MS-7984/Z170 KRAIT GAMING (MS-7984), BIOS B.80 05/11/2016
+[ 54.972489] RIP: 0010: (null)
+[ 54.972497] RSP: 0018:ffffaea002c8bcc0 EFLAGS: 00010202
+[ 54.972508] RAX: 0000000000000000 RBX: ffff9d30d3c56f60 RCX: 00000000007c0002
+[ 54.972522] RDX: 000000000001a6fb RSI: 000000000001a6e9 RDI: ffff9d30d3c56f60
+[ 54.972536] RBP: ffffaea002c8bd10 R08: 0000000000000002 R09: ffffffffc06977d0
+[ 54.972550] R10: 0000000000000040 R11: 0000000000000000 R12: 0000000000000002
+[ 54.972564] R13: ffff9d30d3c5001c R14: ffff9d30d3c50000 R15: 0000000000000006
+[ 54.972579] FS: 0000000000000000(0000) GS:ffff9d30eed80000(0000) knlGS:0000000000000000
+[ 54.972594] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
+[ 54.972606] CR2: 0000000000000000 CR3: 00000002dbc0a001 CR4: 00000000003606e0
+[ 54.972620] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
+[ 54.972634] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
+[ 54.972648] Call Trace:
+[ 54.972685] ? gmc_v9_0_emit_flush_gpu_tlb+0x111/0x140 [amdgpu]
+[ 54.972721] uvd_v7_0_ring_emit_vm_flush+0x31/0x70 [amdgpu]
+[ 54.972751] amdgpu_vm_flush+0x5dc/0x6c0 [amdgpu]
+[ 54.972787] ? pp_dpm_powergate_uvd+0x50/0x80 [amdgpu]
+[ 54.972816] amdgpu_ib_schedule+0x120/0x4e0 [amdgpu]
+[ 54.972850] amdgpu_job_run+0x17b/0x1c0 [amdgpu]
+[ 54.972861] drm_sched_main+0x2cc/0x490 [gpu_sched]
+[ 54.972873] ? wait_woken+0x80/0x80
+[ 54.972882] kthread+0x121/0x140
+[ 54.972891] ? drm_sched_job_finish+0xf0/0xf0 [gpu_sched]
+[ 54.972902] ? kthread_create_worker_on_cpu+0x70/0x70
+[ 54.972914] ret_from_fork+0x35/0x40
+[ 54.972922] Code: Bad RIP value.
+[ 54.972932] RIP: (null) RSP: ffffaea002c8bcc0
+[ 54.972943] CR2: 0000000000000000
+[ 54.972951] ---[ end trace 5feb349263bbf633 ]---
+
+Change-Id: I15708d781fdf84c8947ce04dbea904f1fbf1876a
+Signed-off-by: Xiaojie Yuan <Xiaojie.Yuan@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c b/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
+index 31e339c..8245bb6 100644
+--- a/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
+@@ -1705,6 +1705,7 @@ static const struct amdgpu_ring_funcs uvd_v7_0_ring_vm_funcs = {
+ .end_use = amdgpu_uvd_ring_end_use,
+ .emit_wreg = uvd_v7_0_ring_emit_wreg,
+ .emit_reg_wait = uvd_v7_0_ring_emit_reg_wait,
++ .emit_reg_write_reg_wait = amdgpu_ring_emit_reg_write_reg_wait_helper,
+ };
+
+ static const struct amdgpu_ring_funcs uvd_v7_0_enc_ring_vm_funcs = {
+--
+2.7.4
+