<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body>
<p>From my understanding and looking at the code I think we don't
prevent but rather invalidate current user mappings and use
subsequent page faults to map into user space process the pages
from the new location. Check what this function is doing during
move -
<a class="moz-txt-link-freetext" href="https://elixir.bootlin.com/linux/v5.12-rc5/source/drivers/gpu/drm/ttm/ttm_bo.c#L238">https://elixir.bootlin.com/linux/v5.12-rc5/source/drivers/gpu/drm/ttm/ttm_bo.c#L238</a><br>
</p>
<p>Andrey<br>
</p>
<div class="moz-cite-prefix">On 2021-04-05 12:01 p.m., 258454946
wrote:<br>
</div>
<blockquote type="cite" cite="mid:tencent_826EEA87BF2072281A8B94B2955DDCA14E05@qq.com">
<div>Hi Guys,</div>
<div><br>
</div>
<div>I am a newbee of gfx development. Recently, I am researching
amdgpu open source driver, and encounter a problem, but do not
find the answer.</div>
<div><br>
</div>
<div>We know the user maybe map a gem backing buffer for
reading/writing and hold the mapping for a long term. while,
kernel driver will also moves the user mapped bo to other memory
region. vram ->gtt, gtt->vram, even it may be swaped out
under OOM case.</div>
<div><br>
</div>
<div>So, my question is how driver prevents kernel ttm from moving
the user mapped bo while user is accessing it?</div>
<div><br>
</div>
<div>Thanks for your attention!</div>
<div><br>
</div>
<div>Lizhi.</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
amd-gfx mailing list
<a class="moz-txt-link-abbreviated" href="mailto:amd-gfx@lists.freedesktop.org">amd-gfx@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/amd-gfx">https://lists.freedesktop.org/mailman/listinfo/amd-gfx</a>
</pre>
</blockquote>
</body>
</html>