<div dir="ltr">Hi Lucas,<br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Aug 31, 2017 at 1:44 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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Am Donnerstag, den 31.08.2017, 13:36 +0100 schrieb Luís Mendes:<br>
<br>
<br>
<br>
> The imx6q is not showing any issues on this Ubuntu Mate 17.04, even<br>
> for the conditions:<br>
> Aug 31 11:58:08 picolo etnaviv[4694]: Mismatch src(y=0,h=24),<br>
> dst(y=0,h=25), dy=0<br>
> Aug 31 11:58:08 picolo etnaviv[4694]: Mismatch src(y=0,h=24),<br>
> dst(y=-25,h=25), dy=25<br>
> Aug 31 11:58:08 picolo etnaviv[4694]: Mismatch src(y=0,h=1),<br>
> dst(y=-25,h=25), dy=1<br>
> Aug 31 11:58:12 picolo etnaviv[4694]: Mismatch src(y=0,h=1),<br>
> dst(y=0,h=25), dy=0<br>
><br>
><br>
> No MMU faults, no screen corruptions.<br>
><br>
<br>
</span>The GPUs on MY6Q are unable to produce MMU faults, so with incorrect<br>
programming they are reading/writing unrelated data, or the MMU scratch<br>
page.<br>
<span class=""><br>
<br>
> The imx6qp always have MMU faults and is showing the issues when<br>
> removing the "goto callback" instruction.<br>
> Aug 30 18:41:32 picolo etnaviv[1722]: Mismatch src(y=0,h=24),<br>
> dst(y=0,h=25), dy=0<br>
> Aug 30 18:41:34 picolo etnaviv[1722]: Mismatch src(y=0,h=24),<br>
> dst(y=-25,h=25), dy=25<br>
> Aug 30 18:41:34 picolo etnaviv[1722]: Mismatch src(y=0,h=1),<br>
> dst(y=-25,h=25), dy=1<br>
> Aug 30 18:41:41 picolo etnaviv[1722]: Mismatch src(y=0,h=1),<br>
> dst(y=0,h=25), dy=0<br>
<br>
</span>The MX6QP is much stricter on the MMU side and will stop the GPU from<br>
processing any further commands if it is trying to read/write unmapped<br>
data.<br>
<span class=""><br>
><br>
> This probably indicates that there is no implementation issue with<br>
> CopyNtoN and this is rather a side effect of the MMU faults.<br>
><br>
<br>
</span>This indicates there is in fact an implementation error in CopyNtoN, but<br>
as Russell pointed out it seems to be caused by core X server functions.<br>
The question is if we can reasonably work around the issue.<br>
<br>
Regards,<br>
Lucas<br>
<br></blockquote><div> </div></div>Thanks for the clarification.</div><div class="gmail_extra">I will have a look at the X server APIs that Russell is referring to... and check the CopyNToN implementation.</div><div class="gmail_extra">Maybe I can find something, although I am not familiar with these APIs.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Regards,</div><div class="gmail_extra">Luís<br></div></div>