<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI] igt@gem_tiled_swapping@non-threaded - incomplete - system hang?"
href="https://bugs.freedesktop.org/show_bug.cgi?id=104009#c5">Comment # 5</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI] igt@gem_tiled_swapping@non-threaded - incomplete - system hang?"
href="https://bugs.freedesktop.org/show_bug.cgi?id=104009">bug 104009</a>
from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
<pre>Hmm, looking at __lock_page(), I'm reminded of this bug:
Commit 50816c48997a ("sched/wait: Standardize internal naming of
wait-queue entries") changed the behavior of add_wait_queue() from
inserting the wait entry at the head of the wait queue to the tail of
the wait queue. This is the relevant hunk:
-void add_wait_queue(wait_queue_head_t *q, wait_queue_entry_t *wait)
+void add_wait_queue(wait_queue_head_t *q, struct wait_queue_entry *wq_entry)
{
unsigned long flags;
- wait->flags &= ~WQ_FLAG_EXCLUSIVE;
+ wq_entry->flags &= ~WQ_FLAG_EXCLUSIVE;
spin_lock_irqsave(&q->lock, flags);
- __add_wait_queue(q, wait);
+ __add_wait_queue_entry_tail(q, wq_entry);
spin_unlock_irqrestore(&q->lock, flags);
}
EXPORT_SYMBOL(add_wait_queue);
Note the change from __add_wait_queue() to
__add_wait_queue_entry_tail(). I'm assuming this was a typo since the
commit message doesn't mention any functional changes. This patch
restores the old behavior.
tip-bot:
Commit-ID: c6b9d9a33029014446bd9ed84c1688f6d3d4eab9
Gitweb: <a href="https://git.kernel.org/tip/c6b9d9a33029014446bd9ed84c1688f6d3d4eab9">https://git.kernel.org/tip/c6b9d9a33029014446bd9ed84c1688f6d3d4eab9</a>
Author: Omar Sandoval <<a href="mailto:osandov@fb.com">osandov@fb.com</a>>
AuthorDate: Tue, 5 Dec 2017 23:15:31 -0800
Committer: Ingo Molnar <<a href="mailto:mingo@kernel.org">mingo@kernel.org</a>>
CommitDate: Wed, 6 Dec 2017 19:30:34 +0100
sched/wait: Fix add_wait_queue() behavioral change
Drat, which is already in drm-tip.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are on the CC list for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>