Summary: | [Bisected] stuck pageflip | ||
---|---|---|---|
Product: | DRI | Reporter: | Jim <jimmcdevitt60> |
Component: | DRM/Intel | Assignee: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Status: | CLOSED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Severity: | major | ||
Priority: | highest | CC: | intel-gfx-bugs, jimmcdevitt60, mikhail.v.gavrilov, tvboxspy, yannis.dassiras |
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
See Also: | https://bugzilla.kernel.org/show_bug.cgi?id=88381 | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Description
Jim
2014-11-05 03:26:01 UTC
Created attachment 108925 [details]
kernel config
You haven't mentioned an actual hang? --- Comment #2 from Chris Wilson <chris@chris-wilson.co.uk> --- > You haven't mentioned an actual hang? > I said "This kernel (3.18 rc2) also introduces performance issues after the warning and eventually hangs with no message or trace. rc1 continues to run and does not hang." rc2 and rc3 hangs - I cannot get to the debug file system even to get any file. The machine is quite locked up I have to hard reset. Same behavior on an asus board as well as the Elite (what a misnomer that is) Jim, could you please try with i915.use_mmio_flip=1 if it makes a difference? Looks like that did the trick. Thanks much. Sorry I jumped the gun, I loaded the wrong image :( Your suggestion yielded this: Nov 8 21:45:58 Aesop kernel: [ 105.045447] ------------[ cut here ]------------ Nov 8 21:45:58 Aesop kernel: [ 105.045526] WARNING: CPU: 0 PID: 3071 at /home/jim/software/ubuntu/linux-3.18-rc3/drivers/gpu/drm/i915/intel_display.c:9914 intel_check_page_flip+0xb8/0xc1 [i915]() Nov 8 21:45:58 Aesop kernel: [ 105.045530] Kicking stuck page flip: queued at 7784, now 7785 Nov 8 21:45:58 Aesop kernel: [ 105.045533] Modules linked in: nls_iso8859_1 ctr ccm nf_log_ipv4 nf_log_common xt_tcpudp ip6table_mangle iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat xt_TCPMSS xt_LOG ipt_REJECT iptable_mangle xt_multiport xt_state xt_limit xt_conntrack nf_conntrack_ftp nf_conntrack ip6table_filter ip6_tables iptable_filter ip_tables x_tables lp arc4 rt2800usb rt2800lib crc_ccitt rt2x00usb rt2x00lib mac80211 cfg80211 gspca_zc3xx gspca_main videodev ipv6 snd_hda_codec_idt snd_hda_codec_generic snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device snd soundcore ppdev gpio_ich serio_raw parport_pc parport lpc_ich mfd_core it87 hwmon_vid uas usb_storage 8139too 8139cp mii i915 drm_kms_helper Nov 8 21:45:58 Aesop kernel: [ 105.045596] CPU: 0 PID: 3071 Comm: dbus-daemon Not tainted 3.18.0-0-reaper #3~rc3 Nov 8 21:45:58 Aesop kernel: [ 105.045598] Hardware name: ECS 945GCT-M2/945GCT-M2, BIOS 080012 07/18/2008 Nov 8 21:45:58 Aesop kernel: [ 105.045602] 00000000000026ba ffff88007f403b90 ffffffff81668e0a 0000000000000007 Nov 8 21:45:58 Aesop kernel: [ 105.045606] ffff88007f403be0 ffff88007f403bd0 ffffffff81045027 ffff88007f403c00 Nov 8 21:45:58 Aesop kernel: [ 105.045610] ffff880037bc7008 ffff880037b91c30 0000000000000082 ffff880037b91a90 Nov 8 21:45:58 Aesop kernel: [ 105.045615] Call Trace: Nov 8 21:45:58 Aesop kernel: [ 105.045617] <IRQ> [<ffffffff81668e0a>] dump_stack+0x46/0x58 Nov 8 21:45:58 Aesop kernel: [ 105.045631] [<ffffffff81045027>] warn_slowpath_common+0x81/0x9f Nov 8 21:45:58 Aesop kernel: [ 105.045635] [<ffffffff810450e8>] warn_slowpath_fmt+0x46/0x48 Nov 8 21:45:58 Aesop kernel: [ 105.045667] [<ffffffffa008633a>] intel_check_page_flip+0xb8/0xc1 [i915] Nov 8 21:45:58 Aesop kernel: [ 105.045691] [<ffffffffa0052fda>] i915_handle_vblank+0x53/0xab [i915] Nov 8 21:45:58 Aesop kernel: [ 105.045697] [<ffffffff8106cf5c>] ? __enqueue_entity+0x6c/0x6e Nov 8 21:45:58 Aesop kernel: [ 105.045724] [<ffffffffa0059389>] i915_irq_handler+0x236/0x375 [i915] Nov 8 21:45:58 Aesop kernel: [ 105.045731] [<ffffffff810850c1>] handle_irq_event_percpu+0x56/0x1b4 Nov 8 21:45:58 Aesop kernel: [ 105.045734] [<ffffffff8106bcc9>] ? sched_clock_local+0x1c/0x85 Nov 8 21:45:58 Aesop kernel: [ 105.045738] [<ffffffff81085259>] handle_irq_event+0x3a/0x61 Nov 8 21:45:58 Aesop kernel: [ 105.045742] [<ffffffff81087951>] handle_fasteoi_irq+0x7a/0xdc Nov 8 21:45:58 Aesop kernel: [ 105.045746] [<ffffffff81004d26>] handle_irq+0x22/0x3c Nov 8 21:45:58 Aesop kernel: [ 105.045751] [<ffffffff816758c3>] do_IRQ+0x53/0xf0 Nov 8 21:45:58 Aesop kernel: [ 105.045755] [<ffffffff81673cea>] common_interrupt+0x6a/0x6a Nov 8 21:45:58 Aesop kernel: [ 105.045759] [<ffffffff81026d7d>] ? lapic_next_event+0x1d/0x21 Nov 8 21:45:58 Aesop kernel: [ 105.045764] [<ffffffff810481c7>] ? __do_softirq+0x80/0x2a2 Nov 8 21:45:58 Aesop kernel: [ 105.045767] [<ffffffff81048167>] ? __do_softirq+0x20/0x2a2 Nov 8 21:45:58 Aesop kernel: [ 105.045771] [<ffffffff810485ba>] irq_exit+0x7e/0x9b Nov 8 21:45:58 Aesop kernel: [ 105.045774] [<ffffffff816759aa>] smp_apic_timer_interrupt+0x4a/0x5a Nov 8 21:45:58 Aesop kernel: [ 105.045778] [<ffffffff8167400a>] apic_timer_interrupt+0x6a/0x70 Nov 8 21:45:58 Aesop kernel: [ 105.045780] <EOI> [<ffffffff816728fb>] ? _raw_spin_unlock_irqrestore+0xe/0x10 Nov 8 21:45:58 Aesop kernel: [ 105.045790] [<ffffffff8114bcad>] slob_alloc.isra.11+0x1df/0x217 Nov 8 21:45:58 Aesop kernel: [ 105.045794] [<ffffffff8114bf9e>] __kmalloc+0x103/0x177 Nov 8 21:45:58 Aesop kernel: [ 105.045799] [<ffffffff8130380b>] ? aa_alloc_task_context+0x1b/0x1d Nov 8 21:45:58 Aesop kernel: [ 105.045802] [<ffffffff8130380b>] aa_alloc_task_context+0x1b/0x1d Nov 8 21:45:58 Aesop kernel: [ 105.045807] [<ffffffff8130945d>] apparmor_cred_prepare+0x1f/0x4c Nov 8 21:45:58 Aesop kernel: [ 105.045812] [<ffffffff812d288f>] security_prepare_creds+0x16/0x18 Nov 8 21:45:58 Aesop kernel: [ 105.045816] [<ffffffff8105fc7e>] prepare_creds+0xf3/0x150 Nov 8 21:45:58 Aesop kernel: [ 105.045820] [<ffffffff81158d43>] SyS_faccessat+0x34/0x1d8 Nov 8 21:45:58 Aesop kernel: [ 105.045823] [<ffffffff81158eff>] SyS_access+0x18/0x1a Nov 8 21:45:58 Aesop kernel: [ 105.045827] [<ffffffff81673096>] system_call_fastpath+0x16/0x1b Nov 8 21:45:58 Aesop kernel: [ 105.045829] ---[ end trace 39b0b2a66910fa29 ]--- and then the performance starts getting worse until it hangs. (time period is around 1 hour or so after the flip, when things start to go south... 3.18-rc4 has the same problem (no new DRI patches) spews: Nov 11 19:31:13 Aesop AptDaemon.Worker: INFO: Finished transaction /org/debian/apt/transaction/b5c8d704861b4195a66be0f35f0a492a Nov 11 19:32:24 Aesop kernel: [ 245.684344] ------------[ cut here ]------------ Nov 11 19:32:24 Aesop kernel: [ 245.684422] WARNING: CPU: 0 PID: 3241 at /home/jim/software/ubuntu/linux-3.18-rc4/drivers/gpu/drm/i915/intel_display.c:9914 intel_check_page_flip+0xb8/0xc1 [i915]() Nov 11 19:32:24 Aesop kernel: [ 245.684427] Kicking stuck page flip: queued at 18286, now 18287 Nov 11 19:32:24 Aesop kernel: [ 245.684429] Modules linked in: nls_iso8859_1 nf_log_ipv4 nf_log_common xt_tcpudp ip6table_mangle iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat xt_TCPMSS xt_LOG ipt_REJECT iptable_mangle xt_multiport xt_state xt_limit xt_conntrack nf_conntrack_ftp nf_conntrack ip6table_filter ip6_tables iptable_filter ip_tables x_tables lp arc4 ipv6 rt2800usb rt2800lib crc_ccitt rt2x00usb rt2x00lib mac80211 cfg80211 gspca_zc3xx gspca_main videodev snd_hda_codec_idt snd_hda_codec_generic snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device snd soundcore ppdev gpio_ich parport_pc parport lpc_ich mfd_core serio_raw it87 hwmon_vid uas usb_storage 8139too 8139cp mii i915 drm_kms_helper Nov 11 19:32:24 Aesop kernel: [ 245.684491] CPU: 0 PID: 3241 Comm: nautilus Not tainted 3.18.0-0-reaper #4~rc4 Nov 11 19:32:24 Aesop kernel: [ 245.684493] Hardware name: ECS 945GCT-M2/945GCT-M2, BIOS 080012 07/18/2008 Nov 11 19:32:24 Aesop kernel: [ 245.684496] 00000000000026ba ffff88007f403b90 ffffffff81668dea 0000000000000007 Nov 11 19:32:24 Aesop kernel: [ 245.684501] ffff88007f403be0 ffff88007f403bd0 ffffffff81045027 ffff88007f403c00 Nov 11 19:32:24 Aesop kernel: [ 245.684505] ffff880078d63008 ffff880037bec858 0000000000000082 ffff880037bec6b8 Nov 11 19:32:24 Aesop kernel: [ 245.684509] Call Trace: Nov 11 19:32:24 Aesop kernel: [ 245.684512] <IRQ> [<ffffffff81668dea>] dump_stack+0x46/0x58 Nov 11 19:32:24 Aesop kernel: [ 245.684526] [<ffffffff81045027>] warn_slowpath_common+0x81/0x9f Nov 11 19:32:24 Aesop kernel: [ 245.684530] [<ffffffff810450e8>] warn_slowpath_fmt+0x46/0x48 Nov 11 19:32:24 Aesop kernel: [ 245.684560] [<ffffffffa008633a>] intel_check_page_flip+0xb8/0xc1 [i915] Nov 11 19:32:24 Aesop kernel: [ 245.684585] [<ffffffffa0052fda>] i915_handle_vblank+0x53/0xab [i915] Nov 11 19:32:24 Aesop kernel: [ 245.684591] [<ffffffff8106cf5c>] ? __enqueue_entity+0x6c/0x6e Nov 11 19:32:24 Aesop kernel: [ 245.684617] [<ffffffffa0059389>] i915_irq_handler+0x236/0x375 [i915] Nov 11 19:32:24 Aesop kernel: [ 245.684623] [<ffffffff810850c1>] handle_irq_event_percpu+0x56/0x1b4 Nov 11 19:32:24 Aesop kernel: [ 245.684627] [<ffffffff8106bcc9>] ? sched_clock_local+0x1c/0x85 Nov 11 19:32:24 Aesop kernel: [ 245.684631] [<ffffffff81085259>] handle_irq_event+0x3a/0x61 Nov 11 19:32:24 Aesop kernel: [ 245.684635] [<ffffffff81087951>] handle_fasteoi_irq+0x7a/0xdc Nov 11 19:32:24 Aesop kernel: [ 245.684639] [<ffffffff81004d26>] handle_irq+0x22/0x3c Nov 11 19:32:24 Aesop kernel: [ 245.684644] [<ffffffff816758c3>] do_IRQ+0x53/0xf0 Nov 11 19:32:24 Aesop kernel: [ 245.684648] [<ffffffff81673cea>] common_interrupt+0x6a/0x6a Nov 11 19:32:24 Aesop kernel: [ 245.684653] [<ffffffff81026d7d>] ? lapic_next_event+0x1d/0x21 Nov 11 19:32:24 Aesop kernel: [ 245.684657] [<ffffffff810481c7>] ? __do_softirq+0x80/0x2a2 Nov 11 19:32:24 Aesop kernel: [ 245.684661] [<ffffffff81048167>] ? __do_softirq+0x20/0x2a2 Nov 11 19:32:24 Aesop kernel: [ 245.684665] [<ffffffff810485ba>] irq_exit+0x7e/0x9b Nov 11 19:32:24 Aesop kernel: [ 245.684669] [<ffffffff816759aa>] smp_apic_timer_interrupt+0x4a/0x5a Nov 11 19:32:24 Aesop kernel: [ 245.684672] [<ffffffff8167400a>] apic_timer_interrupt+0x6a/0x70 Nov 11 19:32:24 Aesop kernel: [ 245.684674] <EOI> [<ffffffff816728db>] ? _raw_spin_unlock_irqrestore+0xe/0x10 Nov 11 19:32:24 Aesop kernel: [ 245.684684] [<ffffffff8114bb34>] slob_alloc.isra.11+0x96/0x217 Nov 11 19:32:24 Aesop kernel: [ 245.684688] [<ffffffff8114bdca>] slob_alloc_node+0x115/0x1a1 Nov 11 19:32:24 Aesop kernel: [ 245.684692] [<ffffffff8114be69>] ? kmem_cache_alloc+0x13/0x15 Nov 11 19:32:24 Aesop kernel: [ 245.684696] [<ffffffff8114be69>] kmem_cache_alloc+0x13/0x15 Nov 11 19:32:24 Aesop kernel: [ 245.684701] [<ffffffff8165d6b2>] dup_mmap+0x162/0x340 Nov 11 19:32:24 Aesop kernel: [ 245.684704] [<ffffffff8165daae>] dup_mm+0x9a/0x102 Nov 11 19:32:24 Aesop kernel: [ 245.684708] [<ffffffff8165dbdc>] copy_mm+0xc6/0xe9 Nov 11 19:32:24 Aesop kernel: [ 245.684712] [<ffffffff81043a48>] copy_process.part.36+0x51c/0xcdb Nov 11 19:32:24 Aesop kernel: [ 245.684718] [<ffffffff81309367>] ? apparmor_file_alloc_security+0x20/0x37 Nov 11 19:32:24 Aesop kernel: [ 245.684723] [<ffffffff8116f602>] ? __d_instantiate+0x95/0xe3 Nov 11 19:32:24 Aesop kernel: [ 245.684727] [<ffffffff81044287>] copy_process+0x80/0x82 Nov 11 19:32:24 Aesop kernel: [ 245.684730] [<ffffffff810443ae>] do_fork+0x82/0x264 Nov 11 19:32:24 Aesop kernel: [ 245.684735] [<ffffffff81174783>] ? get_unused_fd_flags+0x30/0x32 Nov 11 19:32:24 Aesop kernel: [ 245.684739] [<ffffffff811747ac>] ? __fd_install+0x27/0x56 Nov 11 19:32:24 Aesop kernel: [ 245.684743] [<ffffffff8104460a>] SyS_clone+0x16/0x18 Nov 11 19:32:24 Aesop kernel: [ 245.684746] [<ffffffff816733a9>] stub_clone+0x69/0x90 Nov 11 19:32:24 Aesop kernel: [ 245.684749] [<ffffffff81673096>] ? system_call_fastpath+0x16/0x1b Nov 11 19:32:24 Aesop kernel: [ 245.684753] ---[ end trace ee39cf72b3e9e6f9 ]--- I also have the same hang on playing videos or graphic operations. use_mmio_flip=1 makes no difference I have bisected it to d6bbafa183793537d8dca4d4c2e448805e59448a drm/i915: Check for a stalled page flip after each vblank and 9c787942907face82da505c2c5493998b56cfc5a drm/i915: Decouple the stuck pageflip on modeset Reverting these commits restores trouble free operation. The trouble starts in i915_handle_vblank, I am just reverting just the changes made to this function for now. (In reply to Malcolm from comment #8) > I also have the same hang on playing videos or graphic operations. > > use_mmio_flip=1 makes no difference > > I have bisected it to > d6bbafa183793537d8dca4d4c2e448805e59448a > drm/i915: Check for a stalled page flip after each vblank > and > 9c787942907face82da505c2c5493998b56cfc5a > drm/i915: Decouple the stuck pageflip on modeset > > Reverting these commits restores trouble free operation. > > The trouble starts in i915_handle_vblank, I am just reverting just the > changes made to this function for now. I tried just in case I missed something but that was to no avail. I think I've got it down to 3 commits, but it is a little more complicated than that. Thanks for the post! It's really annoying. Malcom, can you please attach the precise patch you're using? Created attachment 109779 [details]
revert changes to i915_handle_vblank in d6bbafa1
I am not happy with this patch because the exact cause is
still unknown.
I'm sorry, I already tried that to no avail. Same problem. I didn't think that was the issue as everything points to the batch of drm changes pushed in 3.18-rc1. I will have the bisection by Sunday. Regards, Jim Please retest with latest drm-intel-fixes, specifically commit cb4975b7c365f6d8e6d17cf4a24d846b3d27e6b7 Author: Ville Syrjälä <ville.syrjala@linux.intel.com> Date: Tue May 27 21:33:09 2014 +0300 drm/i915: Ignore SURFLIVE and flip counter when the GPU gets reset Unfortunately the latest drm-intel-fixes does not resolve the issue. Although I do get a little longer before the machines dies after the Kicking stuck page flip warning. Just for clarification I am using the Intel® 946GZ chip set. Just one query in __intel_pageflip_stall_check the kick always happens on if (atomic_read(&work->pending) >= INTEL_FLIP_COMPLETE) *work->pending == INTEL_FLIP_COMPLETE(2) is this correct? I am confused as to whether it going complete or has it completed? and how could advance beyond INTEL_FLIP_COMPLETE(2)? ignore my last questions, I have kinda worked it out now. Bisect in early - promised son Sunday. I am now fairly befuddled. I did this process on three machines. On the twin of this motherboard, a student did the bisection manually. On the machine I reported I wrote a script to try all possible combinations of what was pushed in rc1. When I came back to check, result was inconclusive. So. I looked a little more closely to the patch Malcolm suggested (by itself, it didn't solve my problem.) Maybe my machines have different timings and maybe rc1 just exposed what was there all along. I then re-applied Malcolms' patch and re-ran my script. What it spit out was commit f0d3dad3. Lo and behold no more problem. The patch description: Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Sun Sep 7 16:51:12 2014 +0100 drm/i915: Wrap -EIO send-vblank event for failed pageflip in spinlock drm_send_vblank_event() demands that we hold the event spinlock whilst calling it, so do so. Looking at the code tells me this can't be the problem. I then extracted a fresh archive of rc1 and rc5 applied Malcolms' patch and reversed f0d3dad3. I rebuilt the entire kernel for both rc1 and rc5. No problems. If i do not revert f0d3dad3, I have the problem again. I installed the new rc1 kernel and also tried the rc5 kernel. Both were fine. I ran piglit and no problems except the the tests that always fail. So now, all 3 machines are happy. All I want now is for somebody to explain to me WHY. Thank you Malcolm for pointing me in the right direction. Created attachment 109866 [details]
create stuck_page_flip_completed to complete stuck flips
Try this patch it enables vblank_disable_immediate while the kick is in progress.
I have been running this patch for 4 hours now and the system hasn't hung.
I doesn't stop the warning message.
Spoke too soon the patch failed:-( Just an update - 3.18-rc6 same story. Problem occurs with no patches installed, with just Malcoms' patch only, and with only commit f0d3dad3 reversed. Trouble free with Malcolms' patch and commit f0d3dad3 reversed. Looks like I should educate myself a bit more - some of the code I see is very hard to follow and sometimes I wonder what in the hell was that? I'm an old microcoder and OS hacker; I never really had to get too involved with the graphics side of it. Regards Created attachment 110912 [details] [review] [PATCH] drm/i915: Don't call intel_prepare_page_flip() multiple times on gen2-4 I ran into similar problems on my 830 when frobbing around with the vblank code. I belieeve this patch should help. Please test. That patch fixes the issue for me. So far no problems Just diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index e5974ce1d32b..70a75136bc61 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -9229,7 +9229,8 @@ void intel_prepare_page_flip(struct drm_device *dev, int plane) */ spin_lock_irqsave(&dev->event_lock, flags); if (intel_crtc->unpin_work && page_flip_finished(intel_crtc)) - atomic_inc_not_zero(&intel_crtc->unpin_work->pending); + atomic_cmpxchg(&intel_crtc->unpin_work->pending, + INTEL_FLIP_PENDING, INTEL_FLIP_COMPLETE); spin_unlock_irqrestore(&dev->event_lock, flags); } should preserve the stuck pageflip handling for 945gm that begat the original hammer. That patch failed. It is clear the code is trying to kick a page that is not stuck but delayed. This locks on call drm_crtc_vblank_put and the precise timing vblank->disable_timer completion. On second thoughts: diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 70a75136bc61..0c43d970dbf9 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -9707,8 +9707,8 @@ static bool __intel_pageflip_stall_check(struct drm_device *dev, struct intel_unpin_work *work = intel_crtc->unpin_work; u32 addr; - if (atomic_read(&work->pending) >= INTEL_FLIP_COMPLETE) - return true; + if (atomic_read(&work->pending) < INTEL_FLIP_COMPLETE) + return false; if (!work->enable_stall_check) return false; Tried patch and now the problem becomes my whole screen goes black every so often ~15 minute intervals. I ran piglit and no new errors. if my display didn't blank out, I would have said it worked fairly well. Should I try Chris' patch? If I am to try Chris' patch, should that be by itself or with the patch from Ville? (In reply to Jim from comment #25) > Tried patch and now the problem becomes my whole screen goes black every so > often ~15 minute intervals. I ran piglit and no new errors. if my display > didn't blank out, I would have said it worked fairly well. This could be the new gen3/4 GPU reset handling. Any GPU hangs mentioned in dmesg? Fixed by commit 7d47559ee84b3ac206aa9e675606fafcd7c0b500 Author: Ville Syrjälä <ville.syrjala@linux.intel.com> Date: Wed Dec 17 23:08:03 2014 +0200 drm/i915: Don't call intel_prepare_page_flip() multiple times on gen2-4 in drm-intel-next-fixes. Thanks for the report. (In reply to Ville Syrjala from comment #28) > (In reply to Jim from comment #25) > > Tried patch and now the problem becomes my whole screen goes black every so > > often ~15 minute intervals. I ran piglit and no new errors. if my display > > didn't blank out, I would have said it worked fairly well. > > This could be the new gen3/4 GPU reset handling. Any GPU hangs mentioned in > dmesg? It seems this is a separate issue, please file new bugs for new issues. Thanks. Ill stick to using Malcolms patch and reversing commit f0d3dad3. Thank you for all your help. *** Bug 86849 has been marked as a duplicate of this bug. *** (In reply to Ville Syrjala from comment #20) > Created attachment 110912 [details] [review] [review] > [PATCH] drm/i915: Don't call intel_prepare_page_flip() multiple times on > gen2-4 > > I ran into similar problems on my 830 when frobbing around with the vblank > code. I belieeve this patch should help. Please test. Same here, applying the patch on the failing 3.19-rc3 fixes the problem for me too and confirms bug 86849 as a duplicate. *** Bug 88575 has been marked as a duplicate of this bug. *** I have this on 3.19 final (git.freedesktop.org revision 89271faca1 compiled on 21-Feb 2015). It happened when resuming from S4 hibernation on a MSI MS-7817/CSM-B85M-E45 (MS-7817), BIOS V10.8 12/11/2014. [65406.859126] init: anacron main process (19916) killed by TERM signal [65406.892094] PM: Syncing filesystems ... done. [65406.893622] Freezing user space processes ... (elapsed 0.039 seconds) done. [65406.933503] PM: Marking nosave pages: [mem 0x00000000-0x00000fff] [65406.933505] PM: Marking nosave pages: [mem 0x00058000-0x00058fff] [65406.933506] PM: Marking nosave pages: [mem 0x0009f000-0x000fffff] [65406.933507] PM: Marking nosave pages: [mem 0xc5355000-0xc535bfff] [65406.933508] PM: Marking nosave pages: [mem 0xc579f000-0xc5d2ffff] [65406.933522] PM: Marking nosave pages: [mem 0xd8dac000-0xd8e42fff] [65406.933524] PM: Marking nosave pages: [mem 0xd8e93000-0xd9ffefff] [65406.933567] PM: Marking nosave pages: [mem 0xda000000-0xffffffff] [65406.933951] PM: Basic memory bitmaps created [65406.933994] PM: Preallocating image memory... done (allocated 772421 pages) [65407.318358] PM: Allocated 3089684 kbytes in 0.38 seconds (8130.74 MB/s) [65407.318359] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done. [65407.319703] Suspending console(s) (use no_console_suspend to debug) [65407.320052] parport_pc 00:07: disabled [65407.320143] serial 00:06: disabled [65407.320152] i8042 kbd 00:05: System wakeup enabled by ACPI [65407.335012] PM: freeze of devices complete after 15.306 msecs [65407.385370] PM: late freeze of devices complete after 50.356 msecs [65407.385935] PM: noirq freeze of devices complete after 0.563 msecs [65407.386137] ACPI: Preparing to enter system sleep state S4 [65407.386368] PM: Saving platform NVS memory [65407.386820] Disabling non-boot CPUs ... [65407.386849] intel_pstate CPU 1 exiting [65407.387944] kvm: disabling virtualization on CPU1 [65407.387951] smpboot: CPU 1 is now offline [65407.388225] intel_pstate CPU 2 exiting [65407.388300] Broke affinity for irq 16 [65407.389303] kvm: disabling virtualization on CPU2 [65407.389312] smpboot: CPU 2 is now offline [65407.389500] intel_pstate CPU 3 exiting [65407.389582] Broke affinity for irq 23 [65407.389584] Broke affinity for irq 26 [65407.390586] kvm: disabling virtualization on CPU3 [65407.390590] smpboot: CPU 3 is now offline [65407.390924] PM: Creating hibernation image: [65407.464525] PM: Need to copy 771114 pages [65407.464526] PM: Normal pages needed: 771114 + 1024, available pages: 1290565 [65407.391482] PM: Restoring platform NVS memory [65407.391899] Enabling non-boot CPUs ... [65407.391925] x86: Booting SMP configuration: [65407.391926] smpboot: Booting Node 0 Processor 1 APIC 0x2 [65407.403612] kvm: enabling virtualization on CPU1 [65407.405777] CPU1 is up [65407.405797] smpboot: Booting Node 0 Processor 2 APIC 0x4 [65407.417506] kvm: enabling virtualization on CPU2 [65407.419639] CPU2 is up [65407.419659] smpboot: Booting Node 0 Processor 3 APIC 0x6 [65407.431391] kvm: enabling virtualization on CPU3 [65407.433603] CPU3 is up [65407.436080] ACPI: Waking up from system sleep state S4 [65407.438351] PM: noirq restore of devices complete after 1.803 msecs [65407.742419] PM: early restore of devices complete after 304.048 msecs [65407.801522] usb usb1: root hub lost power or was reset [65407.801523] usb usb2: root hub lost power or was reset [65407.801742] usb usb3: root hub lost power or was reset [65407.801811] usb usb4: root hub lost power or was reset [65407.805633] ehci-pci 0000:00:1a.0: cache line size of 64 is not supported [65407.805695] ehci-pci 0000:00:1d.0: cache line size of 64 is not supported [65407.805766] rtc_cmos 00:02: System wakeup disabled by ACPI [65407.805779] i8042 kbd 00:05: System wakeup disabled by ACPI [65407.806142] serial 00:06: activated [65407.806562] parport_pc 00:07: activated [65407.807548] sd 0:0:0:0: [sda] Starting disk [65407.807555] sd 2:0:0:0: [sdb] Starting disk [65407.807564] sd 3:0:0:0: [sdc] Starting disk [65408.126379] usb 3-1: reset high-speed USB device number 2 using ehci-pci [65408.126380] usb 4-1: reset high-speed USB device number 2 using ehci-pci [65408.142354] ata2: SATA link up 1.5 Gbps (SStatus 113 SControl 300) [65408.149057] ata2.00: configured for UDMA/100 [65408.150354] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300) [65408.150383] ata3: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [65408.151978] ata3.00: supports DRM functions and may not be fully accessible [65408.152145] ata3.00: failed to get NCQ Send/Recv Log Emask 0x1 [65408.152502] ata3.00: supports DRM functions and may not be fully accessible [65408.152562] ata3.00: failed to get NCQ Send/Recv Log Emask 0x1 [65408.152649] ata3.00: configured for UDMA/133 [65408.153709] ata4.00: configured for UDMA/133 [65408.282437] usb 1-1: reset low-speed USB device number 2 using xhci_hcd [65408.518355] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [65408.559703] xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep ffff8802115db000 [65408.559706] usb 1-1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes [65408.562169] PM: restore of devices complete after 760.782 msecs [65408.562276] PM: Image restored successfully. [65408.562290] PM: Basic memory bitmaps freed [65408.562292] Restarting tasks ... done. [65408.563257] video LNXVIDEO:00: Restoring backlight state [65408.563774] pci_bus 0000:04: Allocating resources [65408.563788] pci 0000:03:00.0: bridge window [io 0x1000-0x0fff] to [bus 04] add_size 1000 [65408.563790] pci 0000:03:00.0: bridge window [mem 0x00100000-0x000fffff 64bit pref] to [bus 04] add_size 200000 [65408.563791] pci 0000:03:00.0: bridge window [mem 0x00100000-0x000fffff] to [bus 04] add_size 200000 [65408.563794] pci 0000:03:00.0: res[14]=[mem 0x00100000-0x000fffff] get_res_add_size add_size 200000 [65408.563795] pci 0000:03:00.0: res[15]=[mem 0x00100000-0x000fffff 64bit pref] get_res_add_size add_size 200000 [65408.563796] pci 0000:03:00.0: res[13]=[io 0x1000-0x0fff] get_res_add_size add_size 1000 [65408.563800] pci 0000:03:00.0: BAR 14: assigned [mem 0xdf600000-0xdf7fffff] [65408.563804] pci 0000:03:00.0: BAR 15: assigned [mem 0xdf800000-0xdf9fffff 64bit pref] [65408.563808] pci 0000:03:00.0: BAR 13: assigned [io 0x3000-0x3fff] [65408.563809] pci 0000:03:00.0: PCI bridge to [bus 04] [65408.563812] pci 0000:03:00.0: bridge window [io 0x3000-0x3fff] [65408.563818] pci 0000:03:00.0: bridge window [mem 0xdf600000-0xdf7fffff] [65408.563823] pci 0000:03:00.0: bridge window [mem 0xdf800000-0xdf9fffff 64bit pref] [65409.242495] ata1.00: configured for UDMA/133 [65409.424815] r8169 0000:02:00.0 p2p1: link down [65409.424878] r8169 0000:02:00.0 p2p1: link down [65409.424879] IPv6: ADDRCONF(NETDEV_UP): p2p1: link is not ready [65409.904694] ------------[ cut here ]------------ [65409.904718] WARNING: CPU: 0 PID: 0 at drivers/gpu/drm/i915/intel_display.c:9698 intel_check_page_flip+0xd1/0xe0 [i915]() [65409.904719] Kicking stuck page flip: queued at 1257433, now 1257445 [65409.904719] Modules linked in: snd_hda_codec_hdmi(E) snd_hda_codec_realtek(E) snd_hda_codec_generic(E) snd_hda_intel(E) snd_hda_controller(E) snd_hda_codec(E) snd_hwdep(E) snd_pcm(E) bnep(E) intel_rapl(E) iosf_mbi(E) x86_pkg_temp_thermal(E) intel_powerclamp(E) rfcomm(E) snd_seq_midi(E) coretemp(E) bluetooth(E) kvm_intel(E) snd_seq_midi_event(E) kvm(E) snd_rawmidi(E) serio_raw(E) snd_seq(E) snd_seq_device(E) snd_timer(E) snd(E) tpm_infineon(E) 8250_fintek(E) soundcore(E) intel_smartconnect(E) shpchp(E) mei_me(E) mei(E) lpc_ich(E) mac_hid(E) parport_pc(E) ppdev(E) lp(E) parport(E) nls_iso8859_1(E) dm_crypt(E) hid_generic(E) usbhid(E) hid(E) mxm_wmi(E) crct10dif_pclmul(E) crc32_pclmul(E) ghash_clmulni_intel(E) aesni_intel(E) aes_x86_64(E) lrw(E) gf128mul(E) glue_helper(E) ablk_helper(E) cryptd(E) i915(E) i2c_algo_bit(E) drm_kms_helper(E) ahci(E) libahci(E) r8169(E) mii(E) drm(E) wmi(E) video(E) [65409.904737] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G E 3.19.0+ #6 [65409.904738] Hardware name: MSI MS-7817/CSM-B85M-E45 (MS-7817), BIOS V10.8 12/11/2014 [65409.904739] ffffffffc02f8c08 ffff88021ea03d38 ffffffff817a8d47 0000000000000000 [65409.904741] ffff88021ea03d88 ffff88021ea03d78 ffffffff81075bea ffff88021ea03d88 [65409.904742] ffff8800d6bfd000 ffff880214f2d000 ffff880214f2d1a8 0000000000000000 [65409.904743] Call Trace: [65409.904744] <IRQ> [<ffffffff817a8d47>] dump_stack+0x45/0x57 [65409.904751] [<ffffffff81075bea>] warn_slowpath_common+0x8a/0xc0 [65409.904752] [<ffffffff81075c66>] warn_slowpath_fmt+0x46/0x50 [65409.904761] [<ffffffffc02a0621>] intel_check_page_flip+0xd1/0xe0 [i915] [65409.904770] [<ffffffffc026c148>] ironlake_irq_handler+0x428/0x1010 [i915] [65409.904772] [<ffffffff813a7750>] ? timerqueue_add+0x60/0xb0 [65409.904775] [<ffffffff810956dc>] ? notifier_call_chain+0x4c/0x70 [65409.904777] [<ffffffff810cd82e>] handle_irq_event_percpu+0x3e/0x1a0 [65409.904778] [<ffffffff810cd9d1>] handle_irq_event+0x41/0x70 [65409.904780] [<ffffffff810d090f>] handle_edge_irq+0x7f/0x120 [65409.904782] [<ffffffff81017772>] handle_irq+0x22/0x40 [65409.904783] [<ffffffff817b4011>] do_IRQ+0x51/0xf0 [65409.904785] [<ffffffff817b1ded>] common_interrupt+0x6d/0x6d [65409.904786] <EOI> [<ffffffff816497b0>] ? cpuidle_enter_state+0x70/0x170 [65409.904789] [<ffffffff8164979d>] ? cpuidle_enter_state+0x5d/0x170 [65409.904791] [<ffffffff81649967>] cpuidle_enter+0x17/0x20 [65409.904792] [<ffffffff810b6974>] cpu_startup_entry+0x344/0x3e0 [65409.904794] [<ffffffff81799e47>] rest_init+0x77/0x80 [65409.904797] [<ffffffff81d3c0fc>] start_kernel+0x494/0x4a1 [65409.904798] [<ffffffff81d3ba58>] ? set_init_arg+0x55/0x55 [65409.904800] [<ffffffff81d3b120>] ? early_idt_handlers+0x120/0x120 [65409.904801] [<ffffffff81d3b5ee>] x86_64_start_reservations+0x2a/0x2c [65409.904803] [<ffffffff81d3b733>] x86_64_start_kernel+0x143/0x152 [65409.904804] ---[ end trace 9fb4f007520bfc15 ]--- [65412.273284] r8169 0000:02:00.0 p2p1: link up [65412.273298] IPv6: ADDRCONF(NETDEV_CHANGE): p2p1: link becomes ready (In reply to Jens from comment #34) > I have this on 3.19 final (git.freedesktop.org revision 89271faca1 compiled > on 21-Feb 2015). It happened when resuming from S4 hibernation on a MSI > MS-7817/CSM-B85M-E45 (MS-7817), BIOS V10.8 12/11/2014. No, you have an entirely different issue. Please file a new bug. OK, will do. Sorry. (How can you tell? I'm asking so I can tell before posting in the future.) Created attachment 132962 [details] attachment-26550-0.html Closed is it? Well that is a good way to clear the backlog. On Tue, Jul 25, 2017 at 6:50 AM, <bugzilla-daemon@freedesktop.org> wrote: > Elizabeth <elizabethx.de.la.torre.mena@intel.com> changed bug 85888 > <https://bugs.freedesktop.org/show_bug.cgi?id=85888> > What Removed Added > Status RESOLVED CLOSED > > ------------------------------ > You are receiving this mail because: > > - You are on the CC list for the bug. > - You reported the bug. > > |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.