Re: [Linux v4.10.0-rc1] call-traces after suspend-resume (pm? i915? cpu/hotplug?)

From: Sedat Dilek
Date: Tue Dec 27 2016 - 10:55:44 EST


On Tue, Dec 27, 2016 at 4:10 PM, Daniel Vetter <daniel@xxxxxxxx> wrote:
> On Tue, Dec 27, 2016 at 10:24:42AM +0000, Chris Wilson wrote:
>> On Tue, Dec 27, 2016 at 12:09:22AM +0100, Sedat Dilek wrote:
>> > [ Add some pm | i915 | x86 folks ]
>> >
>> > Hi,
>> >
>> > I have built Linux v4.10-rc1 today on my Ubuntu/precise AMD64 system
>> > and I see some call-traces.
>> > It is reproducible on suspend and resume.
>> >
>> > I cannot say which area touches the problem or if these are several
>> > independent problems.
>> >
>> > For a full dmesg-log see attachments (my linux-config is attached, too).
>> >
>> > Here some hunks...
>> >
>> > [ 29.003601] BUG: sleeping function called from invalid context at
>> > drivers/base/power/runtime.c:1032
>> > [ 29.003608] in_atomic(): 1, irqs_disabled(): 0, pid: 1469, name: Xorg
>> > [ 29.003610] 1 lock held by Xorg/1469:
>> > [ 29.003611] #0: (&dev->struct_mutex){+.+.+.}, at:
>> > [<ffffffffa0623c13>] i915_mutex_lock_interruptible+0x43/0x140 [i915]
>> > [ 29.003653] CPU: 0 PID: 1469 Comm: Xorg Not tainted
>> > 4.10.0-rc1-1-iniza-small #1
>> > [ 29.003655] Hardware name: SAMSUNG ELECTRONICS CO., LTD.
>> > 530U3BI/530U4BI/530U4BH/530U3BI/530U4BI/530U4BH, BIOS 13XK 03/28/2013
>> > [ 29.003656] Call Trace:
>> > [ 29.003663] dump_stack+0x85/0xc2
>> > [ 29.003666] ___might_sleep+0x196/0x260
>> > [ 29.003668] __might_sleep+0x53/0xb0
>> > [ 29.003671] __pm_runtime_resume+0x7a/0x90
>> > [ 29.003691] intel_runtime_pm_get+0x25/0x90 [i915]
>> > [ 29.003711] aliasing_gtt_bind_vma+0xaa/0xf0 [i915]
>> > [ 29.003733] i915_vma_bind+0xaf/0x1e0 [i915]
>> > [ 29.003752] i915_gem_execbuffer_relocate_entry+0x513/0x6f0 [i915]
>> > [ 29.003755] ? find_get_entry+0x5/0x240
>> > [ 29.003774] i915_gem_execbuffer_relocate_vma.isra.34+0x188/0x250 [i915]
>> > [ 29.003796] ? __i915_vma_do_pin+0x334/0x590 [i915]
>> > [ 29.003815] ? i915_gem_execbuffer_reserve_vma.isra.31+0x152/0x1f0 [i915]
>> > [ 29.003833] ? i915_gem_execbuffer_reserve.isra.32+0x372/0x3a0 [i915]
>> > [ 29.003851] i915_gem_do_execbuffer.isra.38+0xa70/0x1a40 [i915]
>> > [ 29.003854] ? __might_fault+0x4e/0xb0
>> > [ 29.003872] i915_gem_execbuffer2+0xc5/0x260 [i915]
>> > [ 29.003873] ? __might_fault+0x4e/0xb0
>> > [ 29.003888] drm_ioctl+0x206/0x450 [drm]
>> > [ 29.003913] ? i915_gem_execbuffer+0x340/0x340 [i915]
>> > [ 29.003918] ? __fget+0x5/0x200
>> > [ 29.003922] do_vfs_ioctl+0x91/0x6f0
>> > [ 29.003925] ? __fget+0x111/0x200
>> > [ 29.003926] ? __fget+0x5/0x200
>> > [ 29.003929] SyS_ioctl+0x79/0x90
>> > [ 29.003934] entry_SYSCALL_64_fastpath+0x23/0xc6
>> > [ 29.003936] RIP: 0033:0x7fb9e09e7bb7
>> > [ 29.003938] RSP: 002b:00007ffe2dba2ea8 EFLAGS: 00003202 ORIG_RAX:
>> > 0000000000000010
>> > [ 29.003941] RAX: ffffffffffffffda RBX: 0000000000000012 RCX: 00007fb9e09e7bb7
>> > [ 29.003942] RDX: 00007ffe2dba2fa8 RSI: 0000000040406469 RDI: 0000000000000009
>> > [ 29.003944] RBP: 00007ffe2dba2dc0 R08: 0000000000000040 R09: 0101010101010101
>> > [ 29.003945] R10: 0000000000000000 R11: 0000000000003202 R12: 0000000000000008
>> > [ 29.003947] R13: 00000000000000f5 R14: 0000000000000000 R15: 0000000000000000
>>
>> This should be independent of suspend/resume and should be fixed with
>> https://patchwork.freedesktop.org/patch/116373/
>>
>> commit ebc0808fa2da0548a78e715858024cb81cd732bc
>> Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
>> Date: Tue Oct 18 13:02:51 2016 +0100
>>
>> drm/i915: Restrict pagefault disabling to just around copy_from_user()
>>
>> It is in drm-intel-next-fixes, so should be picked up 4.10 in due
>> course.
>
> Also note that our CI is unhappy with -rc1, and it was not due to i915
> patches. So very likely something else is also broken.
>

Can you explain what "CI" means and its function in drm-intel development?

The mentioned patch is 4/4 of a series [1].
The single patch does not apply on top of Linux v4.10-rc1.

1/4 does not apply, etc.

2/4 is already in Linus tree [2].
Can you explain why the other 3 did not got into v4.10-rc1?

So, what is your advise to test Chris' patch?

- Sedat -

[1] https://patchwork.freedesktop.org/series/13950/
[2] http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=b4bcbe2a90a1127a6dad72fbda27e77705d9e0f4