<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - memcpy accessing GPU memory mappings using SSE instructions breaks in KVM"
href="https://bugs.freedesktop.org/show_bug.cgi?id=111004#c11">Comment # 11</a>
on <a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - memcpy accessing GPU memory mappings using SSE instructions breaks in KVM"
href="https://bugs.freedesktop.org/show_bug.cgi?id=111004">bug 111004</a>
from <span class="vcard"><a class="email" href="mailto:maxamar@mail.ru" title="maxamar@mail.ru">maxamar@mail.ru</a>
</span></b>
<pre>(In reply to Christian König from <a href="show_bug.cgi?id=111004#c10">comment #10</a>)
<span class="quote">> Sorry but this is not a bug at all.
>
> As Michel already noted core Vulkan as well as some OpenGL/OpenCL extensions
> mandate that the platform support all well aligned memory accesses to GPU
> local memory (VRAM).
>
> If your platform (KVM in this case) can't do this for some reason you simply
> can't use that platform with this software.
>
> In other words even if you replace memcpy/memset in Mesa with custom non SSE
> versions it is perfectly valid for an application to use SSE to access VRAM.
> And you can't change a binary application (which is actually just conforming
> to a standard).
>
> The only possible workaround I can see in the driver is to not use VRAM at
> all for CPU mappings. That's actually rather easily doable, but would
> potentially cripple performance quite a bit.
>
> I can point you to the necessary bits of code if you are interested in that.</span >
Yes and somehow Mesa uses "movups" instruction which is:
MOVUPS-Move Unaligned Packed Single-Precision Floating-Point
So is a bug.
Correct version is movaps which copies aligned data (is supported in KVM since
long ago).
Yes it is in glibc and what's so - don't use it then.
KVM is part of Linux so must be supported.
Anyway upgrading kernel to 4.17 seems to solve the problem, needs a test.</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 the assignee for the bug.</li>
</ul>
</body>
</html>