<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div dir="auto">
<div><br>
<div class="gmail_extra"><br>
<div class="gmail_quote">Am 27.09.2019 20:07 schrieb Ilia Mirkin <imirkin@alum.mit.edu>:<br type="attribution">
<blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><font size="2"><span style="font-size:11pt">
<div>On Thu, Sep 26, 2019 at 5:44 PM Ben Skeggs <skeggsb@gmail.com> wrote:<br>
><br>
> On Tue, 24 Sep 2019 at 22:19, Christian König<br>
> <ckoenig.leichtzumerken@gmail.com> wrote:<br>
> ><br>
> > Hi guys,<br>
> ><br>
> > while working through more old TTM functionality I stumbled over the<br>
> > io_reserve_lru.<br>
> ><br>
> > Basic idea is that when this flag is set the driver->io_mem_reserve()<br>
> > callback can return -EAGAIN resulting in unmapping of other BOs.<br>
> ><br>
> > But Nouveau doesn't seem to return -EAGAIN in the call path of<br>
> > io_mem_reserve anywhere.<br>
> I believe this is a bug in Nouveau.  We *should* be returning -EAGAIN<br>
> if we fail to find space in BAR1 to map the BO into.<br>
<br>
Could this lead to SIGBUS in userspace, esp related to resume and<br>
similar situations? </div>
</span></font></div>
</blockquote>
</div>
</div>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">Yes, I would say that's exactly what would happen.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Christian.</div>
<div dir="auto"><br>
</div>
<div dir="auto">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><font size="2"><span style="font-size:11pt">
<div>A user has been experiencing this in a<br>
tricky-to-reproduce scenario with a ton of vram dedicated to<br>
framebuffers and so on (3x 4K), and the nouveau ddx falls back to<br>
memcpy in certain cases.<br>
<br>
  -ilia<br>
</div>
</span></font></div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</body>
</html>