[virglrenderer-devel] Strange graphical glitches under virgl.

Gert Wollny gert.wollny at collabora.com
Sat Jul 21 07:24:07 UTC 2018


Am Freitag, den 20.07.2018, 23:45 -0700 schrieb Lepton Wu:
> Actually I have a question for glCopyImageSubData,  from the spec:
> 
> https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glCopyImage
> SubData.xhtml
> 
> It said:  "srcY The Y coordinate of the top edge of the source region
> to copy."

... and the text says "srcX, srcY, and srcZ specify the lower left
texel coordinates of a srcWidth-wide by srcHeight-high by srcDepth-deep 
rectangular subregion" :) 

Given that the OpenGL coordinate system usually has its origin in the
lower left cornder, I think that the text is correct and the per-
parameter description wrong. 

> 
> But in the regular path, my feeling is that we treat the that
> src.box.y as  the lower bounder of the rectangle...
> 
> Should the y be the lower bounder or top edge?
> 
> Could this be a issue?

In any case, when I added glCopyImageSubData tests didn't start
failing, so I guess in the end the same regions wereare copied, and
since your video shows that the failures are spurious, I think that
this is some other error.

In any case, since ARB_copy_image is not part of GLES 3.1, we will need
to fix this if we want to reliably run this on a GLES 3.1 host, hence,
I'll open a task and look into this.

best, 
Gert

> 
> On Fri, Jul 20, 2018 at 11:11 PM Gert Wollny <gert.wollny at collabora.c
> om> wrote:
> > 
> > Am Freitag, den 20.07.2018, 21:47 -0700 schrieb Lepton Wu:
> > > Actually I tried it and it didn't work.  In my case, if I force
> > > the
> > > code go "use_gl" branch, it "fix" this issue.
> > > The patch you said actually just patch blit_gl function. Even
> > > without
> > > this patch, it seems it "fix" this issue.
> > 
> > Sorry, for me it's early in the morning and I must have mis-read
> > your
> > email, I thought that the error was in the GL path. Since both,
> > using
> > glCopyImageSubData and the GL fallback, fix this, I would assume
> > that
> > there is some state leak with the blit framebuffers, unfortunately
> > these are really diffcult to track down, especially without a test
> > case
> >  that can be automated...
> > 
> > best,
> > Gert
> > 
> > 
> > > But I still have no idea why the regular code path have such kind
> > > of
> > > effects.
> > > On Fri, Jul 20, 2018 at 9:44 PM Gert Wollny <gert.wollny at collabor
> > > a.co
> > > m> wrote:
> > > > 
> > > > Am Freitag, den 20.07.2018, 17:34 -0700 schrieb Lepton Wu:
> > > > > I think the bug is inside vrend_renderer_blit_int, I just
> > > > > tried
> > > > > to
> > > > > change use_gl to true inside this function and it also
> > > > > fixed this issue.
> > > > 
> > > > I'm thinkng about how to use the GL fallback path less, because
> > > > currently use_gl is used in many cases where blit would work.
> > > > 
> > > > Meanwhie you could try
> > > >   https://patchwork.freedesktop.org/patch/239981/
> > > > to see whether it fixes the issue.
> > > > 
> > > > Best,
> > > > Gert
> > > > 
> > > > 
> > > > 
> > > > > 
> > > > > So it seems use_gl==false  code path inside
> > > > > vrend_renderer_blit_int
> > > > > has some kind of bug.
> > > > > On Fri, Jul 20, 2018 at 4:38 PM Lepton Wu <lepton at chromium.or
> > > > > g>
> > > > > wrote:
> > > > > > 
> > > > > > Thanks Gurchetan he confirmed with me that he didn't see
> > > > > > such
> > > > > > kind
> > > > > > of
> > > > > > issue in his setup.
> > > > > > So I just upgraded everything to TOT and find out this
> > > > > > issuse
> > > > > > was
> > > > > > gone. With bisect, I tracked down
> > > > > > this issue get fixed by this one:
> > > > > > 
> > > > > > https://patchwork.freedesktop.org/patch/230529/
> > > > > > 
> > > > > > So I guess does this mean there is some bug for regular
> > > > > > memcpy
> > > > > > code
> > > > > > path?
> > > > > > On Fri, Jul 20, 2018 at 2:28 PM Gurchetan Singh
> > > > > > <gurchetansingh at chromium.org> wrote:
> > > > > > > 
> > > > > > > On Fri, Jul 20, 2018 at 2:21 PM Lepton Wu <lepton at chromiu
> > > > > > > m.or
> > > > > > > g>
> > > > > > > wrote:
> > > > > > > > 
> > > > > > > > Hi,
> > > > > > > > 
> > > > > > > > I have an issue which I recorded a video  to show the
> > > > > > > > bug:
> > > > > > > > https://youtu.be/ECGDCMAOTxs
> > > > > > > > You can see, sometimes, there is a "wrong block" of
> > > > > > > > rendering.
> > > > > > > > It's
> > > > > > > > always some kind of rectangle somewhere.
> > > > > > > > A strange part is: I've never seen this kind of issue
> > > > > > > > if I
> > > > > > > > am
> > > > > > > > running
> > > > > > > > 3D android games under virgl. Games always
> > > > > > > > running fine. But for Chrome, it sometimes come with
> > > > > > > > this
> > > > > > > > kind
> > > > > > > > of
> > > > > > > > weird graphics.
> > > > > > > > 
> > > > > > > > So I have 2 questions:
> > > > > > > > 
> > > > > > > > 1.  What kind of guest are you using to test virgl?  I
> > > > > > > > am
> > > > > > > > trying to
> > > > > > > > test some other guests to see if I can reproduce
> > > > > > > > same issue so I can confirm if this is something
> > > > > > > > specific
> > > > > > > > to my
> > > > > > > > guest
> > > > > > > > (Chrome OS).
> > > > > > > 
> > > > > > > Most people use Ubuntu VMs.  It's a bit of work to setup
> > > > > > > --
> > > > > > > I'll
> > > > > > > add
> > > > > > > some instructions to "Virgl tips and tricks" document and
> > > > > > > upload
> > > > > > > a VM
> > > > > > > to the cloud.
> > > > > > > 
> > > > > > > > 2.  Do you have any rough idea that this is actually
> > > > > > > > some
> > > > > > > > fixed
> > > > > > > > bug
> > > > > > > > upstream somewhere?  I am using TOT virglrenderer + TOT
> > > > > > > > qemu.
> > > > > > > > But my mesa (mesa-18.1_pre1) and linux kernel (4.4) in
> > > > > > > > guest
> > > > > > > > which
> > > > > > > > could be a little outdated.
> > > > > > > > 
> > > > > > > > Thanks for your help!
> > > > > > > > _______________________________________________
> > > > > > > > virglrenderer-devel mailing list
> > > > > > > > virglrenderer-devel at lists.freedesktop.org
> > > > > > > > https://lists.freedesktop.org/mailman/listinfo/virglren
> > > > > > > > dere
> > > > > > > > r-de
> > > > > > > > vel
> > > > > 
> > > > > _______________________________________________
> > > > > virglrenderer-devel mailing list
> > > > > virglrenderer-devel at lists.freedesktop.org
> > > > > https://lists.freedesktop.org/mailman/listinfo/virglrenderer-
> > > > > deve
> > > > > l


More information about the virglrenderer-devel mailing list