drm/i915: Mark the userptr invalidate workqueue as WQ_MEM_RECLAIM
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@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20170911084135.22903-2-chris@chris-wilson.co.uk
Reviewed-by: MichaĆ Winiarski <michal.winiarski@intel.com>