<div dir="ltr">Hi Lucas, Russel,<br><br><div><div class="gmail_extra"><div class="gmail_quote">On Wed, Aug 30, 2017 at 1:23 PM, Lucas Stach <span dir="ltr"><<a href="mailto:l.stach@pengutronix.de" target="_blank">l.stach@pengutronix.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Am Mittwoch, den 30.08.2017, 12:52 +0100 schrieb Russell King - ARM<br>
Linux:<br>
<div><div class="gmail-h5">> On Wed, Aug 30, 2017 at 12:20:32PM +0100, Luís Mendes wrote:<br>
> > I've found a couple of minutes to test these and I have found that on<br>
> > iMX6QP:<br>
> ><br>
> > static RegionPtr<br>
> > etnaviv_CopyArea(DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC,<br>
> > int srcx, int srcy, int w, int h, int dstx, int dsty)<br>
> ><br>
> > when forcing the unaccel call, no missing text areas occur in the menus and<br>
> > dialog windows, however the MMU fault still occur.<br>
><br>
> It would be good to know the failure case - this has been tested with<br>
> the various X test programs which do not reveal any issues with it.<br>
><br>
> I've found it rather difficult and very time consuming to setup test<br>
> scenarios for issues that other people see with my DDX driver (which<br>
> basically mean downloading an entire distro and trying to replicate<br>
> their setup.)<br></div></div></blockquote><div> </div><div>I can provide a full SD card image that exhibits all the issues I have been reporting on the IMX6QP. <br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail-h5">
><br>
> > The MMU fault seem to not cause any visibile disruption, in fact, if I<br>
> > disable all acceleration functions in the function below, like shown:<br>
> ><br>
> ><br>
> > static void<br>
> > etnaviv_ValidateGC(GCPtr pGC, unsigned long changes, DrawablePtr<br>
> > pDrawable) {<br>
> > ...<br>
> > /* if (!etnaviv->force_fallback && etnaviv_GC_can_accel(pGC, pDrawable))<br>
> > pGC->ops = &etnaviv_GCOps;<br>
> > else */<br>
> > pGC->ops = &etnaviv_unaccel_GCOps;<br>
> ><br>
> > The MMU faults still occur.<br>
><br>
> That doesn't disable /all/ acceleration functions. That disables the<br>
> acceleration functions for the GC - in other words, operations that<br>
> require a graphic context. There's a number of other operations that<br>
> the backend can use that do not use a GC and are unaffected by this.<br>
> CopyWindow is one such example, but also the Render backend as well.<br></div></div></blockquote><div>Ok, I understand! I have however also tried to force the unacell call function by function on etnaviv.c<br></div><div>by commenting out the acceleration calls and issue persists. Possibly there are other files that I will have to address too,</div><div> to see if I find the "culprit function".<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail-h5">
><br>
> Now, all that said, this could be due to a known GC320 bug: the GC320<br>
> fails to properly flush its caches after performing operations even if<br>
> you ask it to. In order to work around this, it is necessary to insert<br>
> into the command stream an additional copy operation. That copy<br>
> operation pushes the previous operation out of the GC320's caches, but<br>
> it could very well result in this very operation also falling foul of<br>
> the very same bug (the difference being that its with the dummy buffer<br>
> rather than with a real buffer, so the user shouldn't see any on-screen<br>
> corruption.)<br>
<br>
</div></div>This issue is no longer present in the GC320 revision on the QuadPlus.<br>
In fact I have a local patch to disable the workaround for this GC320<br>
revision and have been unable to trigger the bug with a testcase that<br>
was easily hitting the issue on the Quad/Duallite.<br>
<br></blockquote><div><br></div><div>In summay I believe to have found three different issues: <br></div><div>1 - Screen blanking on kernels >= 4.12.0</div><div>2 - MMU faults when login in into Ubuntu Mate 17.04 (no screen corruption is visible)<br></div><div>3 - Bug on etnaviv_accel_CopyNtoN(...) which fails to copy some areas containing text into the desktop, X menus and dialog windows. I am trying to collect additional data on this one.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Regards,<br>
Lucas<br>
<br>
</blockquote></div><br></div></div></div>