• Chris Wilson's avatar
    drm/i915/gt: Acquire a GT wakeref for the breadcrumb interrupt · 045d1fb7
    Chris Wilson authored
    Take a wakeref on the intel_gt specifically for the enabled breadcrumb
    interrupt so that we can safely process the mmio. If the intel_gt is
    already asleep by the time we try and setup the breadcrumb interrupt, by
    a process of elimination we know the request must have been completed
    and we can skip its enablement!
    
    <4> [1518.350005] Unclaimed write to register 0x220a8
    <4> [1518.350323] WARNING: CPU: 2 PID: 3685 at drivers/gpu/drm/i915/intel_uncore.c:1163 __unclaimed_reg_debug+0x40/0x50 [i915]
    <4> [1518.350393] Modules linked in: vgem snd_hda_codec_hdmi x86_pkg_temp_thermal i915 coretemp crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_hda_intel snd_intel_dspcfg snd_hda_codec snd_hwdep snd_hda_core btusb cdc_ether btrtl usbnet btbcm btintel r8152 snd_pcm mii bluetooth ecdh_generic ecc i2c_hid pinctrl_sunrisepoint pinctrl_intel intel_lpss_pci prime_numbers [last unloaded: vgem]
    <4> [1518.350646] CPU: 2 PID: 3685 Comm: gem_exec_parse_ Tainted: G     U            5.4.0-rc8-CI-CI_DRM_7490+ #1
    <4> [1518.350708] Hardware name: Google Caroline/Caroline, BIOS MrChromebox 08/27/2018
    <4> [1518.350946] RIP: 0010:__unclaimed_reg_debug+0x40/0x50 [i915]
    <4> [1518.350992] Code: 74 05 5b 5d 41 5c c3 45 84 e4 48 c7 c0 95 8d 47 a0 48 c7 c6 8b 8d 47 a0 48 0f 44 f0 89 ea 48 c7 c7 9e 8d 47 a0 e8 40 45 e3 e0 <0f> 0b 83 2d 27 4f 2a 00 01 5b 5d 41 5c c3 66 90 41 55 41 54 55 53
    <4> [1518.351100] RSP: 0018:ffffc900007f39c8 EFLAGS: 00010086
    <4> [1518.351140] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000006
    <4> [1518.351202] RDX: 0000000080000006 RSI: 0000000000000000 RDI: 00000000ffffffff
    <4> [1518.351249] RBP: 00000000000220a8 R08: 0000000000000000 R09: 0000000000000000
    <4> [1518.351296] R10: ffffc900007f3990 R11: ffffc900007f3868 R12: 0000000000000000
    <4> [1518.351342] R13: 00000000fefeffff R14: 0000000000000092 R15: ffff888155fea000
    <4> [1518.351391] FS:  00007fc255abfe40(0000) GS:ffff88817ab00000(0000) knlGS:0000000000000000
    <4> [1518.351445] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    <4> [1518.351485] CR2: 00007fc2554882d0 CR3: 0000000168ca2005 CR4: 00000000003606e0
    <4> [1518.351529] Call Trace:
    <4> [1518.351746]  fwtable_write32+0x114/0x1d0 [i915]
    <4> [1518.351795]  ? sync_file_alloc+0x80/0x80
    <4> [1518.352039]  gen8_logical_ring_enable_irq+0x30/0x50 [i915]
    <4> [1518.352295]  irq_enable.part.10+0x23/0x40 [i915]
    <4> [1518.352523]  i915_request_enable_breadcrumb+0xb5/0x330 [i915]
    <4> [1518.352575]  ? sync_file_alloc+0x80/0x80
    <4> [1518.352612]  __dma_fence_enable_signaling+0x60/0x160
    <4> [1518.352653]  ? sync_file_alloc+0x80/0x80
    <4> [1518.352685]  dma_fence_add_callback+0x44/0xd0
    <4> [1518.352726]  sync_file_poll+0x95/0xc0
    <4> [1518.352767]  do_sys_poll+0x24d/0x570
    Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20191205215842.862750-1-chris@chris-wilson.co.uk
    045d1fb7
intel_breadcrumbs.c 10.2 KB