From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 105251] [Vega10] GPU lockup on boot: VMC page fault Date: Wed, 03 Jul 2019 11:08:08 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1669787127==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 547266E121 for ; Wed, 3 Jul 2019 11:08:09 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1669787127== Content-Type: multipart/alternative; boundary="15621520893.AEF8B.11787" Content-Transfer-Encoding: 7bit --15621520893.AEF8B.11787 Date: Wed, 3 Jul 2019 11:08:09 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D105251 --- Comment #69 from Hleb Valoshka <375gnu@gmail.com> --- I have this fault with 2400G and mesa 18.3 & 19.1.1 with Linux 4.19 (other versions haven't been tested). It seems that Vega is unable to handle tiny VBO correctly. I have an old application that uses a lot of immediate mode GL functions to create small billboards using GL_QUADS like the following one: glTexCoord2f(0, 0); glVertex(v0 * Size); glTexCoord2f(1, 0); glVertex(v1 * Size); glTexCoord2f(1, 1); glVertex(v2 * Size); glTexCoord2f(0, 1); glVertex(v3 * Size); Initially I have replaced this code with static GLfloat Vtx[] =3D { -1, -1, 0, 0, 0, 1, -1, 0, 1, 0, 1, 1, 0, 1, 1, -1, 1, 0, 0, 1 }; glBufferData(GL_ARRAY_BUFFER, sizeof(Vtx), Vtx, GL_STATIC_DRAW); glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_TEXTURE_COORD_ARRAY); glVertexPointer(3, GL_FLOAT, 5*sizeof(GLfloat), 0); glTexCoordPointer(2, GL_FLOAT, 5*sizeof(GLfloat), 3*sizeof(GLfloat)); + I use VAO if it's available. As a variant I used independent arrays for position and texture coordinates. But with the same fault. So as a result I added required data to another related VBO which contains = 8192 vertices. Now I don't have this fault. I know that OpenGL doesn't like herds of small VBOs, but the hardware failu= re is not an expected result if we use them. --=20 You are receiving this mail because: You are the assignee for the bug.= --15621520893.AEF8B.11787 Date: Wed, 3 Jul 2019 11:08:09 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comme= nt # 69 on bug 10525= 1 from = Hleb Valoshka
I have this fault with 2400G and mesa 18.3 & 19.1.1 with L=
inux 4.19 (other
versions haven't been tested).

It seems that Vega is unable to handle tiny VBO correctly. I have an old
application that uses a lot of immediate mode GL functions to create small
billboards using GL_QUADS like the following one:

    glTexCoord2f(0, 0);          glVertex(v0 * Size);
    glTexCoord2f(1, 0);          glVertex(v1 * Size);
    glTexCoord2f(1, 1);          glVertex(v2 * Size);
    glTexCoord2f(0, 1);          glVertex(v3 * Size);

Initially I have replaced this code with
    static GLfloat Vtx[] =3D
    {
        -1, -1, 0,    0, 0,
         1, -1, 0,    1, 0,
         1,  1, 0,    1, 1,
        -1,  1, 0,    0, 1
    };

    glBufferData(GL_ARRAY_BUFFER, sizeof(Vtx), Vtx, GL_STATIC_DRAW);
    glEnableClientState(GL_VERTEX_ARRAY);
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
    glVertexPointer(3, GL_FLOAT, 5*sizeof(GLfloat), 0);
    glTexCoordPointer(2, GL_FLOAT, 5*sizeof(GLfloat), 3*sizeof(GLfloat));

    + I use VAO if it's available.

As a variant I used independent arrays for position and texture coordinates.
But with the same fault.

So as a result I added required data to another related VBO which contains =
8192
vertices. Now I don't have this fault.

I know that OpenGL doesn't like herds of small VBOs, but the hardware failu=
re
is not an expected result if we use them.


You are receiving this mail because:
  • You are the assignee for the bug.
= --15621520893.AEF8B.11787-- --===============1669787127== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs --===============1669787127==--