[PATCH 11/11] drm/radeon: update the VM after setting BO address v3
Kai Wasserbäch
kai at dev.carbon-project.org
Wed Nov 19 07:43:46 PST 2014
Dear Christian,
Christian König wrote on 19.11.2014 14:35:
> Am 19.11.2014 um 14:16 schrieb Kai Wasserbäch:
>> Dear Christian,
>> Christian König wrote on 19.11.2014 14:01:
>>> From: Christian König <christian.koenig at amd.com>
>>>
>>> This way the necessary VM update is kicked off immediately
>>> if all BOs involved are in GPU accessible memory.
>>>
>>> v2: fix vm lock
>>> v3: immediately update unmaps as well
>>>
>>> Signed-off-by: Christian König <christian.koenig at amd.com>
>>> ---
>>> drivers/gpu/drm/radeon/radeon_gem.c | 64 +++++++++++++++++++++++++++++++++++++
>>> 1 file changed, 64 insertions(+)
>> Is this a fix for <http://thread.gmane.org/gmane.comp.video.dri.devel/118415>
>> which I bisected to the v2 of this patch
>> (<http://thread.gmane.org/gmane.comp.video.dri.devel/118415/focus=118425>) as
>> present on the drm-next-3.19-wip branch?
>
> Yes and no, it was actually the patch before this one which triggered the
> problem. The last one just made it much more likely to appear.
>
> Please test the whole patchset on top of Dave's drm-next tree if your problem
> still exists.
this is still bad:
[ 117.818981] BUG: unable to handle kernel paging request at ffffeae3801564d8
[ 117.819019] IP: [<ffffffff8111e6b1>] virt_to_head_page+0x33/0x4a
[ 117.819049] PGD 0
[ 117.819059] Oops: 0000 [#1] SMP
[ 117.819077] Modules linked in: serpent_avx_x86_64 serpent_sse2_x86_64
serpent_generic blowfish_x86_64 blowfish_common ecb cmac sha512_ssse3
sha512_generic sha256_ssse3 sha256_generic nfsd auth_rpcgss oid_registry nfs_acl
nfs lockd grace fscache sunrpc nls_utf8 nls_cp437 vfat fat snd_hda_codec_realtek
snd_hda_codec_generic snd_hda_codec_hdmi iTCO_wdt iTCO_vendor_support radeon
snd_hda_intel x86_pkg_temp_thermal snd_hda_controller drm_kms_helper ttm
snd_hda_codec snd_hwdep snd_pcm_oss mei_me video snd_mixer_oss i2c_i801 coretemp
snd_pcm mei lpc_ich mfd_core evdev joydev processor snd_timer snd soundcore
button serio_raw kvm_intel kvm pcspkr efivars fuse parport_pc ppdev lp parport
ext4 crc16 mbcache jbd2 btrfs xor raid6_pq twofish_generic twofish_avx_x86_64
twofish_x86_64_3way twofish_x86_64 twofish_common
[ 117.819454] xts af_alg hid_generic usbhid dm_crypt dm_mod microcode
hid_lg_g710_plus(O) hid sg sr_mod sd_mod cdrom crct10dif_pclmul crc32c_intel
ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper
cryptd ahci libahci libata atl1c thermal fan thermal_sys
[ 117.819587] CPU: 1 PID: 1959 Comm: Dreamfall Chapt Tainted: G O
3.18.0-rc4-citadel-airlied-drm-next-with-ck-patches.0.1 #1
[ 117.819634] Hardware name: Gigabyte Technology Co., Ltd. To be filled by
O.E.M./Z77-DS3H, BIOS F11a 11/13/2013
[ 117.819673] task: ffff8800d4417650 ti: ffff8800d21a0000 task.ti: ffff8800d21a0000
[ 117.819702] RIP: 0010:[<ffffffff8111e6b1>] [<ffffffff8111e6b1>]
virt_to_head_page+0x33/0x4a
[ 117.819737] RSP: 0018:ffff8800d21a3cf0 EFLAGS: 00010086
[ 117.819758] RAX: ffffeae3801564d8 RBX: 0000000000000286 RCX: 000077ff80000000
[ 117.819787] RDX: ffffea0000000000 RSI: ffff8800d21a3d30 RDI: ffffc900061cd000
[ 117.819815] RBP: ffffc900061cd000 R08: 0000000000000000 R09: ffff880407859008
[ 117.819843] R10: ffff880407858fe0 R11: 000000000007ffff R12: ffffffffa0602de8
[ 117.819870] R13: ffff880407858000 R14: ffff88039f261ac0 R15: ffff880403d876c0
[ 117.819898] FS: 00007f10c309b780(0000) GS:ffff88041ec40000(0000)
knlGS:0000000000000000
[ 117.819930] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 117.819952] CR2: ffffeae3801564d8 CR3: 00000000dcad1000 CR4: 00000000001407e0
[ 117.819979] Stack:
[ 117.819988] ffffffff8111eda1 ffff8800d21a3de0 0000000000000000 ffff8800d21a3d30
[ 117.820022] ffffffffa0602de8 ffffc900061cd000 00000000a060245a 0000000000000000
[ 117.820055] ffffc900061ce0a8 ffff8800d21a3d58 ffff8800d4417650 0000000000001e7d
[ 117.820089] Call Trace:
[ 117.820101] [<ffffffff8111eda1>] ? kfree+0x2e/0x6d
[ 117.820137] [<ffffffffa0602de8>] ? radeon_gem_va_ioctl+0x28c/0x2d3 [radeon]
[ 117.820176] [<ffffffffa0602601>] ? radeon_gem_create_ioctl+0xa4/0xc3 [radeon]
[ 117.820207] [<ffffffff812be431>] ? drm_ioctl+0x35b/0x3e1
[ 117.820238] [<ffffffffa0602b5c>] ? radeon_gem_get_tiling_ioctl+0x8e/0x8e
[radeon]
[ 117.820270] [<ffffffff81440f2c>] ? _raw_spin_unlock_irqrestore+0xc/0xd
[ 117.820303] [<ffffffffa05de04b>] ? radeon_drm_ioctl+0x4b/0x7a [radeon]
[ 117.820331] [<ffffffff8113e795>] ? do_vfs_ioctl+0x34e/0x404
[ 117.820355] [<ffffffff811312a4>] ? vfs_read+0xbc/0xea
[ 117.820377] [<ffffffff8113e89c>] ? SyS_ioctl+0x51/0x77
[ 117.820398] [<ffffffff814414e9>] ? system_call_fastpath+0x12/0x17
[ 117.820423] Code: 00 00 80 ff 77 00 00 48 01 fa 48 0f 42 0d 78 99 6f 00 48 8d
04 11 48 ba 00 00 00 00 00 ea ff ff 48 c1 e8 0c 48 6b c0 38 48 01 d0 <48> 8b 10
80 e6 80 74 0e 48 8b 50 30 48 8b 08 80 e5 80 48 0f 45
[ 117.820582] RIP [<ffffffff8111e6b1>] virt_to_head_page+0x33/0x4a
[ 117.820608] RSP <ffff8800d21a3cf0>
[ 117.820622] CR2: ffffeae3801564d8
[ 117.838461] ---[ end trace a6e2a6aa1df3196f ]---
I've used Dave Airlie's drm-next as a base (commit
d0d6c524bf1d72e6d64134c3a315b77deecc9252) and "git am"-applied your series (no
issues, applied cleanly) on top. Steam games are still entering the defunct
state as soon as the 3D engines are fired up on a kernel built from that source
tree.
This is with (Debian testing as a base):
GPU: Hawaii PRO [Radeon R9 290] (ChipID = 0x67b1)
Mesa: Git:master/b69c7c5dac
libdrm: Git:master/00847fa48b
LLVM: SVN:trunk/r222254 (3.6 devel)
X.Org: 2:1.16.1-1
Firmware: <http://people.freedesktop.org/~agd5f/radeon_ucode/>
# 9e05820da42549ce9c89d147cf1f8e19 hawaii_ce.bin
# c8bab593090fc54f239c8d7596c8d846 hawaii_mc.bin
# 3618dbb955d8a84970e262bb2e6d2a16 hawaii_me.bin
# c000b0fc9ff6582145f66504b0ec9597 hawaii_mec.bin
# 0643ad24b3beff2214cce533e094c1b7 hawaii_pfp.bin
# ba6054b7d78184a74602fd81607e1386 hawaii_rlc.bin
# 11288f635737331b69de9ee82fe04898 hawaii_sdma.bin
# 284429675a5560e0fad42aa982965fc2 hawaii_smc.bin
libclc: Git:master/7f6f5bff1f
DDX: 1:7.5.0-1
Let me know, if you need something else; see also the original thread
<http://thread.gmane.org/gmane.comp.video.dri.devel/118415> for further information.
Cheers,
Kai
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 648 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20141119/5e6b6ca9/attachment.sig>
More information about the dri-devel
mailing list