From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754645AbbCXQr5 (ORCPT ); Tue, 24 Mar 2015 12:47:57 -0400 Received: from mail-wg0-f42.google.com ([74.125.82.42]:33436 "EHLO mail-wg0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753597AbbCXQrz (ORCPT ); Tue, 24 Mar 2015 12:47:55 -0400 Date: Tue, 24 Mar 2015 17:49:38 +0100 From: Daniel Vetter To: Josh Boyer , Dave Airlie , Xi Ruoyao , Linus Torvalds , "Linux-Kernel@Vger. Kernel. Org" , DRI mailing list , Intel Graphics Development Cc: Jani Nikula Subject: Re: [Intel-gfx] [git pull] drm fixes Message-ID: <20150324164938.GM1349@phenom.ffwll.local> Mail-Followup-To: Josh Boyer , Dave Airlie , Xi Ruoyao , Linus Torvalds , "Linux-Kernel@Vger. Kernel. Org" , DRI mailing list , Intel Graphics Development , Jani Nikula References: <20150324073219.GV1349@phenom.ffwll.local> <20150324134011.GJ1349@phenom.ffwll.local> <20150324143439.GK1349@phenom.ffwll.local> <20150324164831.GL1349@phenom.ffwll.local> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150324164831.GL1349@phenom.ffwll.local> X-Operating-System: Linux phenom 4.0.0-rc3+ User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 24, 2015 at 05:48:31PM +0100, Daniel Vetter wrote: > On Tue, Mar 24, 2015 at 12:10:28PM -0400, Josh Boyer wrote: > > On Tue, Mar 24, 2015 at 10:46 AM, Josh Boyer wrote: > > > On Tue, Mar 24, 2015 at 10:34 AM, Daniel Vetter wrote: > > >> On Tue, Mar 24, 2015 at 10:22:30AM -0400, Josh Boyer wrote: > > >>> On Tue, Mar 24, 2015 at 9:57 AM, Josh Boyer wrote: > > >>> > On Tue, Mar 24, 2015 at 9:40 AM, Daniel Vetter wrote: > > >>> >> On Tue, Mar 24, 2015 at 09:15:32AM -0400, Josh Boyer wrote: > > >>> >>> On Tue, Mar 24, 2015 at 3:32 AM, Daniel Vetter wrote: > > >>> >>> > On Mon, Mar 23, 2015 at 02:34:27PM -0400, Josh Boyer wrote: > > >>> >>> >> On Mon, Mar 23, 2015 at 11:33 AM, Josh Boyer wrote: > > >>> >>> >> > > >>> >>> >> > > >>> >>> >> > > >>> >>> >> >> Xi Ruoyao (1): > > >>> >>> >> >> drm/i915: Ensure plane->state->fb stays in sync with plane->fb > > >>> >>> >> > > >>> >>> >> Turns out to be that commit. > > >>> >>> >> > > >>> >>> >> git bisect start 'drivers/gpu/drm/i915/' > > >>> >>> >> # good: [b314acaccd7e0d55314d96be4a33b5f50d0b3344] Merge branch > > >>> >>> >> 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input > > >>> >>> >> git bisect good b314acaccd7e0d55314d96be4a33b5f50d0b3344 > > >>> >>> >> # bad: [bc465aa9d045feb0e13b4a8f32cc33c1943f62d6] Linux 4.0-rc5 > > >>> >>> >> git bisect bad bc465aa9d045feb0e13b4a8f32cc33c1943f62d6 > > >>> >>> >> # bad: [319c1d420a0b62d9dbb88104afebaabc968cdbfa] drm/i915: Ensure > > >>> >>> >> plane->state->fb stays in sync with plane->fb > > >>> >>> >> git bisect bad 319c1d420a0b62d9dbb88104afebaabc968cdbfa > > >>> >>> >> # first bad commit: [319c1d420a0b62d9dbb88104afebaabc968cdbfa] > > >>> >>> >> drm/i915: Ensure plane->state->fb stays in sync with plane->fb > > >>> >>> >> > > >>> >>> >> Doing a straight revert on top of 4.0-rc5 makes things work again, > > >>> >>> >> albeit with the WARN_ON(obj->frontbuffer_bits) splat still being > > >>> >>> >> there. > > >>> >>> > > > >>> >>> > Can you please test the tip of drm-fixes: > > >>> >>> > > > >>> >>> > commit 8218c3f4df3bb1c637c17552405039a6dd3c1ee1 > > >>> >>> > Author: Daniel Vetter > > >>> >>> > Date: Fri Feb 27 12:58:13 2015 +0100 > > >>> >>> > > > >>> >>> > drm: Fixup racy refcounting in plane_force_disable > > >>> >>> > > > >>> >>> > http://cgit.freedesktop.org/~airlied/linux/commit/?h=drm-fixes&id=8218c3f4df3bb1c637c17552405039a6dd3c1ee1 > > >>> >>> > > > >>> >>> > Because fumble that patch didn't make it to drm-fixes a while ago and > > >>> >>> > instead landed in drm-next. > > >>> >>> > > >>> >>> That seems to have helped with totally different issues a macbook I > > >>> >>> have was seeing. However, it still doesn't fix the issue with the > > >>> >>> Celeron based NUC machine. > > >>> >>> > > >>> >>> I built a kernel based on Linus' latest tree as of this morning, > > >>> >>> without reverting 319c1d4 and adding the commit you pointed to. The > > >>> >>> NUC still won't boot without HDMI connected. With HDMI connected I > > >>> >>> still see the trace below. If I do the blacklist and then insmod > > >>> >>> dance with HDMI unplugged it shows the same spew I reported yesterday > > >>> >>> which starts with the same backtrace. > > >>> >>> > > >>> >>> I'll try building a kernel with 319c1d4 reverted + your patch. I > > >>> >>> suspect things will work fine with that combination because the two > > >>> >>> issues are unrelated. > > >>> >> > > >>> >> Can you please boot with drm.debug=0xff for the below case and grab > > >>> >> complete dmesg? There'll be a lot of crap in the logs, you might need to > > >>> >> blow up the logbuf size massively. But that log should contain everything > > >>> >> I need to figure out where that framebuffer we're blowing up on is going. > > >>> > > > >>> > I provided both with HDMI attached and without (via insmod). If you > > >>> > want them emailed directly let me know, but they were large. > > >>> > > > >>> > Boot with drm.debug=0xff and HDMI connected: > > >>> > > > >>> > https://jwboyer.fedorapeople.org/pub/drm-ff-dmesg.txt > > >>> > > > >>> > Boot with drm.debug=0xff without HDMI connected and i915 loaded via > > >>> > manual insmod after boot: > > >>> > > > >>> > https://jwboyer.fedorapeople.org/pub/drm-ff-no-hdmi-insmod.txt > > >>> > > >>> Here's one more from the macbook I mentioned. It's showing the same > > >>> kref.h splat: > > >>> > > >>> https://jwboyer.fedorapeople.org/pub/drm-ff-macbook.txt > > >> > > >> Ok there's at least one fixup for which we've failed to apply when porting > > >> the fb refcounting fix from -next. Can you please cherry-pick > > >> > > >> commit f55548b5af87ebfc586ca75748947f1c1b1a4a52 > > >> Author: Damien Lespiau > > >> Date: Thu Feb 5 18:30:20 2015 +0000 > > >> > > >> drm/i915: Don't try to reference the fb in get_initial_plane_config() > > >> > > >> From linux-next? > > > > > > Yes, building now. Will let you know as soon as I test it on both machines. > > > > OK, with that commit applied I no longer get the kref.h splat and the > > NUC machine boots headless. I still see the backtrace below on both > > the NUC and the macbook. I have a copy of it with drm.debug=0xff from > > the NUC here: > > > > https://jwboyer.fedorapeople.org/pub/nuc-drm-debug-ff-with-fixes.txt > > > > Getting better at least :). > > Ok thanks for testing. I'll look at that one tomorrow, wasted too much > time with trying to resurrect a few machines that should have matched the > common parts of what goes wrong here. > > Jani, can you please cherry-pick the above commit to -fixes? Actually add Jani this time around ... -Daniel > > One more question: Is the frontbuffer_bits splat now also gone? That was > the one I have no clue about, but since somewhere around 4.0-rc it started > poppping up in a few places ... Thus far it was always the canary for some > other bug though. > > Thanks, Daniel > > > > > josh > > > > [ +0.000372] [drm] Initialized i915 1.6.0 20150130 for 0000:00:02.0 on minor 0 > > [ +0.059774] [drm] GMBUS [i915 gmbus vga] timed out, falling back to > > bit banging on pin 2 > > [ +0.012442] fbcon: inteldrmfb (fb0) is primary device > > [ +0.000103] ------------[ cut here ]------------ > > [ +0.000024] WARNING: CPU: 1 PID: 109 at > > drivers/gpu/drm/drm_atomic.c:482 drm_atomic_check_only+0x33d/0x500 > > [drm]() > > [ +0.000006] Modules linked in: i915 i2c_algo_bit drm_kms_helper drm > > sdhci_pci sdhci mmc_core video > > [ +0.000004] CPU: 1 PID: 109 Comm: kworker/u16:7 Not tainted > > 4.0.0-0.rc5.git1.3.fc23.x86_64 #1 > > [ +0.000001] Hardware name: Apple Inc. > > MacBookPro10,2/Mac-AFD8A9D944EA4843, BIOS > > MBP102.88Z.0106.B03.1211161133 11/16/2012 > > [ +0.000005] Workqueue: events_unbound async_run_entry_fn > > [ +0.000003] 0000000000000000 00000000cbdcc84e ffff8802628bb868 > > ffffffff8177ada9 > > [ +0.000002] 0000000000000000 0000000000000000 ffff8802628bb8a8 > > ffffffff8109c78a > > [ +0.000002] ffff88026154c940 0000000000000048 ffff880262b1e600 > > ffff88026229e2a0 > > [ +0.000001] Call Trace: > > [ +0.000007] [] dump_stack+0x45/0x57 > > [ +0.000003] [] warn_slowpath_common+0x8a/0xc0 > > [ +0.000003] [] warn_slowpath_null+0x1a/0x20 > > [ +0.000014] [] drm_atomic_check_only+0x33d/0x500 [drm] > > [ +0.000005] [] ? kmemdup+0x36/0x50 > > [ +0.000013] [] drm_atomic_commit+0x17/0x60 [drm] > > [ +0.000008] [] > > drm_atomic_helper_plane_set_property+0x8d/0xd0 [drm_kms_helper] > > [ +0.000013] [] drm_mode_plane_set_obj_prop+0x2d/0x90 [drm] > > [ +0.000006] [] restore_fbdev_mode+0x6b/0xf0 > > [drm_kms_helper] > > [ +0.000006] [] > > drm_fb_helper_restore_fbdev_mode_unlocked+0x29/0x80 [drm_kms_helper] > > [ +0.000006] [] drm_fb_helper_set_par+0x22/0x50 > > [drm_kms_helper] > > [ +0.000042] [] intel_fbdev_set_par+0x1a/0x60 [i915] > > [ +0.000005] [] fbcon_init+0x578/0x600 > > [ +0.000005] [] visual_init+0xbc/0x120 > > [ +0.000004] [] do_bind_con_driver+0x17e/0x3b0 > > [ +0.000007] [] do_take_over_console+0xb4/0x1b0 > > [ +0.000013] [] do_fbcon_takeover+0x63/0xd0 > > [ +0.000003] [] fbcon_event_notify+0x6cd/0x7d0 > > [ +0.000005] [] notifier_call_chain+0x4f/0x80 > > [ +0.000003] [] __blocking_notifier_call_chain+0x4b/0x70 > > [ +0.000002] [] blocking_notifier_call_chain+0x16/0x20 > > [ +0.000003] [] fb_notifier_call_chain+0x1b/0x20 > > [ +0.000013] [] register_framebuffer+0x214/0x360 > > [ +0.000007] [] > > drm_fb_helper_initial_config+0x264/0x3c0 [drm_kms_helper] > > [ +0.000004] [] ? pick_next_task_fair+0x121/0x8b0 > > [ +0.000034] [] intel_fbdev_initial_config+0x1b/0x20 [i915] > > [ +0.000002] [] async_run_entry_fn+0x4a/0x150 > > [ +0.000002] [] process_one_work+0x14c/0x400 > > [ +0.000002] [] worker_thread+0x53/0x470 > > [ +0.000003] [] ? rescuer_thread+0x300/0x300 > > [ +0.000002] [] ? rescuer_thread+0x300/0x300 > > [ +0.000002] [] kthread+0xd8/0xf0 > > [ +0.000004] [] ? kthread_create_on_node+0x1b0/0x1b0 > > [ +0.000004] [] ret_from_fork+0x58/0x90 > > [ +0.000003] [] ? kthread_create_on_node+0x1b0/0x1b0 > > [ +0.000002] ---[ end trace a73ba186968c6ec8 ]--- > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch