<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - Doing a CLFLUSH on GTT-mapped memory causes a system reboot"
href="https://bugs.freedesktop.org/show_bug.cgi?id=100971">100971</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Doing a CLFLUSH on GTT-mapped memory causes a system reboot
</td>
</tr>
<tr>
<th>Product</th>
<td>DRI
</td>
</tr>
<tr>
<th>Version</th>
<td>XOrg git
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>critical
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>DRM/Intel
</td>
</tr>
<tr>
<th>Assignee</th>
<td>intel-gfx-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>jason@jlekstrand.net
</td>
</tr>
<tr>
<th>QA Contact</th>
<td>intel-gfx-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>CC</th>
<td>intel-gfx-bugs@lists.freedesktop.org
</td>
</tr></table>
<p>
<div>
<pre>Hardware: BXT laptop
Kernel: 4.11.something. I think it's one of Rob or Lionel's OA branches. I'll
let Ken provide a few more details.
I was trying to figure out how to force the CPU to flush it's write-combine
buffers (the kernel wasn't flushing them when EXEC_OBJECT_ASYNC is set). This
prompted me to start experimenting with different operations on GTT-mapped BOs
and see if I could do something to uncached memory that would trigger a WC
flush in the CPU from userspace. I never succeeded, but I did manage to get
some interesting behavior.
The moment I added a CLFLUSH (which is an unprivileged command) to flush a
cache line that's mapped from the GTT, I immediately got system reboots. It
seems 100% reproducable. I've pushed a Vulkan driver branch here which
reproduces it:
<a href="https://cgit.freedesktop.org/~jekstrand/mesa/log/?h=bug/bxt-reboot">https://cgit.freedesktop.org/~jekstrand/mesa/log/?h=bug/bxt-reboot</a>
However, I think you could probably reproduce with an utterly trivial IGT test
if you don't want the full Vulkan driver. I'm fairly sure the culprit is the
CLFLUSH of GTT-mapped memory.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
<li>You are the QA Contact for the bug.</li>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>