[Bug 106344] [CI] igt at sw_sync@sync_multi_consumer_producer - fail - Failed assertion: counter == MULTI_CONSUMER_PRODUCER_THREADS * MULTI_CONSUMER_PRODUCER_ITERATIONS
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Jun 15 11:07:47 UTC 2018
https://bugs.freedesktop.org/show_bug.cgi?id=106344
--- Comment #3 from Chris Wilson <chris at chris-wilson.co.uk> ---
Applied
commit 91f5d4665b07f073c78abd3cd4b8e0e347dbf638 (upstream/master)
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed May 2 10:24:26 2018 +0100
igt/sw_sync: Wrap threaded counter manipulation with mb
sw_sync/sync_multi_consumer_producer was communicating between threads
using the sw_sync ioctl and manipulating a shared volatile counter.
However, the ioctl itself does not imply a memory barrier, and so
different CPUs may see different states of the counter (the volatile
making GCC perform the operation in stages making the race even more
likely). Instead of using volatile, use locked operations to make the
counter manipulation thread-safe.
References: https://bugs.freedesktop.org/show_bug.cgi?id=106344
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
for good measure.
--
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20180615/dd35bc2f/attachment.html>
More information about the intel-gfx-bugs
mailing list