[Intel-gfx] [PATCH 01/11] drm/i915: Mark the userptr invalidate workqueue as WQ_MEM_RECLAIM

Chris Wilson chris at chris-wilson.co.uk
Fri Sep 15 09:19:06 UTC 2017


Quoting Michał Winiarski (2017-09-11 12:33:41)
> On Mon, Sep 11, 2017 at 09:41:25AM +0100, Chris Wilson wrote:
> > To silence the critcs:
> > 
> > [56532.161115] workqueue: PF_MEMALLOC task 36(khugepaged) is flushing !WQ_MEM_RECLAIM i915-userptr-release:          (null)
> > [56532.161138] ------------[ cut here ]------------
> > [56532.161144] WARNING: CPU: 1 PID: 36 at kernel/workqueue.c:2418 check_flush_dependency+0xe8/0xf0
> > [56532.161145] Modules linked in: wmi_bmof
> > [56532.161148] CPU: 1 PID: 36 Comm: khugepaged Not tainted 4.13.0-krejzi #1
> > [56532.161149] Hardware name: HP HP ProBook 470 G3/8102, BIOS N78 Ver. 01.17 06/08/2017
> > [56532.161150] task: ffff8802371ee200 task.stack: ffffc90000174000
> > [56532.161152] RIP: 0010:check_flush_dependency+0xe8/0xf0
> > [56532.161152] RSP: 0018:ffffc900001777b8 EFLAGS: 00010286
> > [56532.161153] RAX: 000000000000006c RBX: ffff88022fc5a000 RCX: 0000000000000001
> > [56532.161154] RDX: 0000000000000000 RSI: 0000000000000086 RDI: 00000000ffffffff
> > [56532.161155] RBP: 0000000000000000 R08: 14f038bb55f6dae0 R09: 0000000000000516
> > [56532.161155] R10: ffffc900001778a0 R11: 000000006c756e28 R12: ffff8802371ee200
> > [56532.161156] R13: 0000000000000000 R14: 000000000000000b R15: ffffc90000177810
> > [56532.161157] FS:  0000000000000000(0000) GS:ffff880240480000(0000) knlGS:0000000000000000
> > [56532.161158] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> > [56532.161158] CR2: 0000000004795ff8 CR3: 000000000220a000 CR4: 00000000003406e0
> > [56532.161159] Call Trace:
> > [56532.161161]  ? flush_workqueue+0x136/0x3e0
> > [56532.161178]  ? _raw_spin_unlock_irqrestore+0xf/0x30
> > [56532.161179]  ? try_to_wake_up+0x1ce/0x3b0
> > [56532.161183]  ? i915_gem_userptr_mn_invalidate_range_start+0x13f/0x150
> > [56532.161184]  ? _raw_spin_unlock+0xd/0x20
> > [56532.161186]  ? i915_gem_userptr_mn_invalidate_range_start+0x13f/0x150
> > [56532.161189]  ? __mmu_notifier_invalidate_range_start+0x4a/0x70
> > [56532.161191]  ? try_to_unmap_one+0x5e5/0x660
> > [56532.161193]  ? rmap_walk_file+0xe4/0x240
> > [56532.161195]  ? __ClearPageMovable+0x10/0x10
> > [56532.161196]  ? try_to_unmap+0x8c/0xe0
> > [56532.161197]  ? page_remove_rmap+0x280/0x280
> > [56532.161199]  ? page_not_mapped+0x10/0x10
> > [56532.161200]  ? page_get_anon_vma+0x90/0x90
> > [56532.161202]  ? migrate_pages+0x6a5/0x940
> > [56532.161203]  ? isolate_freepages_block+0x330/0x330
> > [56532.161205]  ? compact_zone+0x593/0x6a0
> > [56532.161206]  ? enqueue_task_fair+0xc3/0x1180
> > [56532.161208]  ? compact_zone_order+0x9b/0xc0
> > [56532.161210]  ? get_page_from_freelist+0x24a/0x900
> > [56532.161212]  ? try_to_compact_pages+0xc8/0x240
> > [56532.161213]  ? try_to_compact_pages+0xc8/0x240
> > [56532.161215]  ? __alloc_pages_direct_compact+0x45/0xe0
> > [56532.161216]  ? __alloc_pages_slowpath+0x845/0xb90
> > [56532.161218]  ? __alloc_pages_nodemask+0x176/0x1f0
> > [56532.161220]  ? wait_woken+0x80/0x80
> > [56532.161222]  ? khugepaged+0x29e/0x17d0
> > [56532.161223]  ? wait_woken+0x80/0x80
> > [56532.161225]  ? collapse_shmem.isra.39+0xa60/0xa60
> > [56532.161226]  ? kthread+0x10d/0x130
> > [56532.161227]  ? kthread_create_on_node+0x60/0x60
> > [56532.161228]  ? ret_from_fork+0x22/0x30
> > [56532.161229] Code: 00 8b b0 10 05 00 00 48 8d 8b b0 00 00 00 48 8d 90 b8 06 00 00 49 89 e8 48 c7 c7 38 55 09 82 c6 05 f9 c6 1d 01 01 e8 0e a1 03 00 <0f> ff e9 6b ff ff ff 90 48 8b 37 40 f6 c6 04 75 1b 48 c1 ee 05
> > [56532.161251] ---[ end trace 2ce2b4f5f69b803b ]---
> > 
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> 
> Reviewed-by: Michał Winiarski <michal.winiarski at intel.com>

Plonked this one in, but the rest of the series remains untouched. Those
INCOMPLETES are not fixing themselves... :-p
-Chris


More information about the Intel-gfx mailing list