Ubuntu 15.10's Kernel Is Biting Some Radeon Hardware

Written by Michael Larabel in Ubuntu on 18 October 2015 at 03:30 PM EDT. 20 Comments
UBUNTU
While Ubuntu 15.10 is set to ship next week and has passed its final freeze a few days ago, the default kernel of Ubuntu 15.10 is running into some troubles with select Radeon GPUs on the open-source driver.

As mentioned earlier today in an unrelated article, I'm in the process of running some Ubuntu 15.04 vs. Ubuntu 15.10 graphics tests, mostly focused on the AMD side. While I've tested several Radeon GPUs under a clean install of Ubuntu 15.04 and that all went fine, under Ubuntu 15.10, some of these cards no longer play nicely. This isn't for some AMDGPU-supported new GPUs, but for hardware that's been supported for a while like the Radeon R7 370 and R9 270X.


After a brief time of firing up some OpenGL graphics tests on select AMD GPUs using a clean, out-of-the-box Ubuntu 15.10 install with its Linux 4.2 kernel, I'm losing the display. When SSH'ing into the system, the Radeon DRM driver is taking a dump. The GPU lockups usually come down like as follows and can be triggered easily via tests like Team Fortress 2 or Unigine Valley:
[ 1829.141156] radeon 0000:03:00.0: ring 0 stalled for more than 10000msec
[ 1829.141163] radeon 0000:03:00.0: GPU lockup (current fence id 0x0000000000062605 last fence id 0x000000000006260d on ring 0)
[ 1830.050158] BUG: unable to handle kernel paging request at ffffc90401e71ffc
[ 1830.050185] IP: [] radeon_ring_backup+0xda/0x190 [radeon]
[ 1830.050223] PGD 46f0a2067 PUD 0
[ 1830.050234] Oops: 0000 [#1] SMP
[ 1830.050246] Modules linked in: bnep bluetooth snd_hda_codec_realtek snd_hda_codec_generic intel_rapl iosf_mbi x86_pkg_temp_thermal snd_hda_codec_hdmi intel_powerclamp coretemp kvm_intel snd_hda_intel kvm snd_hda_codec crct10dif_pclmul snd_hda_core crc32_pclmul snd_hwdep ghash_clmulni_intel snd_pcm snd_seq_midi aesni_intel snd_seq_midi_event input_leds snd_rawmidi aes_x86_64 lrw gf128mul snd_seq glue_helper ablk_helper snd_seq_device cryptd serio_raw snd_timer sb_edac snd edac_core soundcore mei_me shpchp lpc_ich mei mac_hid tpm_infineon parport_pc ppdev lp parport autofs4 hid_generic usbhid hid mxm_wmi amdkfd amd_iommu_v2 radeon i2c_algo_bit ttm psmouse drm_kms_helper e1000e drm ahci ptp libahci pps_core wmi
[ 1830.050464] CPU: 0 PID: 862 Comm: Xorg Not tainted 4.2.0-16-generic #19-Ubuntu
[ 1830.050488] Hardware name: Gigabyte Technology Co., Ltd. To be filled by O.E.M./X99-UD4-CF, BIOS F13a 04/29/2015
[ 1830.050521] task: ffff88003555a940 ti: ffff8804670a0000 task.ti: ffff8804670a0000
[ 1830.050544] RIP: 0010:[] [] radeon_ring_backup+0xda/0x190 [radeon]
[ 1830.050581] RSP: 0018:ffff8804670a3be8 EFLAGS: 00010206
[ 1830.050598] RAX: ffffc90008f49000 RBX: 00000000ffffffff RCX: 0000000000000000
[ 1830.050620] RDX: 0000000000000000 RSI: ffffc90401e71ffc RDI: 0000000000031500
[ 1830.050642] RBP: ffff8804670a3c28 R08: ffff88043a108b00 R09: 0000000000033000
[ 1830.050665] R10: 8000000000000163 R11: 0000000000000000 R12: ffff880466c554d8
[ 1830.050688] R13: ffff880466c554b0 R14: 000000000000c541 R15: ffff8804670a3c80
[ 1830.050711] FS: 00007f01da077980(0000) GS:ffff88046f400000(0000) knlGS:0000000000000000
[ 1830.050736] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1830.050754] CR2: ffffc90401e71ffc CR3: 0000000466040000 CR4: 00000000001406f0
[ 1830.050776] Stack:
[ 1830.050782] ffff8804670a3c18 ffffffffc01b9613 ffff880466c54000 ffff880466c54000
[ 1830.050805] ffff880466c554d8 ffff8804670a3c80 ffff880466c554d8 0000000000000000
[ 1830.050828] ffff8804670a3cf8 ffffffffc0186cc0 ffff8804670a3c30 ffff880466c54738
[ 1830.050852] Call Trace:
[ 1830.050869] [] ? radeon_irq_kms_disable_hpd+0x73/0x80 [radeon]
[ 1830.050897] [] radeon_gpu_reset+0xd0/0x330 [radeon]
[ 1830.050920] [] ? fence_wait_timeout+0x61/0x110
[ 1830.050946] [] radeon_gem_handle_lockup.part.3+0xe/0x20 [radeon]
[ 1830.050977] [] radeon_gem_wait_idle_ioctl+0xdf/0x130 [radeon]
[ 1830.051006] [] drm_ioctl+0x125/0x610 [drm]
[ 1830.051030] [] ? radeon_gem_busy_ioctl+0xf0/0xf0 [radeon]
[ 1830.051055] [] ? __set_current_blocked+0x36/0x60
[ 1830.051075] [] ? signal_setup_done+0x74/0xc0
[ 1830.051094] [] ? __fpu__restore_sig+0xbb/0x470
[ 1830.051117] [] radeon_drm_ioctl+0x4c/0x80 [radeon]
[ 1830.051139] [] do_vfs_ioctl+0x295/0x480
[ 1830.051157] [] ? fpu__restore_sig+0x4d/0x60
[ 1830.051175] [] SyS_ioctl+0x79/0x90
[ 1830.051193] [] ? sys_rt_sigreturn+0xc8/0xe0
[ 1830.051213] [] entry_SYSCALL_64_fastpath+0x16/0x75
[ 1830.051233] Code: 02 c1 48 85 c0 49 89 07 74 6c 41 8d 7e ff 31 d2 48 c1 e7 02 eb 07 49 8b 07 48 83 c2 04 49 8b 74 24 08 8d 4b 01 89 db 48 8d 34 9e <8b> 36 89 34 10 41 23 4c 24 54 48 39 d7 89 cb 75 da 4c 89 ef e8
[ 1830.051333] RIP [] radeon_ring_backup+0xda/0x190 [radeon]
[ 1830.051361] RSP
[ 1830.051371] CR2: ffffc90401e71ffc
[ 1830.052010] ---[ end trace 42660567020404ea ]---
Strangely, I don't recall hitting so many GPU lockups on any vanilla Linux 4.2 kernel builds nor when using Linux 4.3 Git with my Radeon DRM tests. Again, the issue is with older cards like the R9 270X and R7 370 that worked fine on Ubuntu 15.04 and generally don't regress too much these days. Hopefully the Ubuntu kernel team will be sending down an SRU not too far out.

If you hit similar issues on a clean install of Ubuntu 15.10, there's always the wonderful Ubuntu Mainline Kernel repository with more fresh kernel builds. You can share your Ubuntu 15.10 graphics driver experiences by commenting on this article in the forums. Soon I'll have out the start of the Ubuntu 15.04 vs. 15.10 graphics results for the AMD hardware playing nicely on both distribution releases out-of-the-box.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week