[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#884192: marked as done (libqt5gui5: X startup hang due to glxinfo in Xsession.d/90qt5-opengl)



Your message dated Sat, 23 Dec 2017 16:50:45 -0300
with message-id <[🔎] 2596889.9G6KN44nvb@tonks>
and subject line Re: Bug#884192: libqt5gui5: X startup hang due to glxinfo in Xsession.d/90qt5-opengl
has caused the Debian Bug report #884192,
regarding libqt5gui5: X startup hang due to glxinfo in Xsession.d/90qt5-opengl
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
884192: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884192
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: libqt5gui5
Version: 5.7.1+dfsg-3+b1
Severity: normal

Hello,

There is some sort of race condition in glxinfo (package mesa-utils)
which sometimes causes it to hang during X startup.  Consequently
sometimes /etc/X11/Xsession.d/90qt5-opengl hangs.  And so X sometimes
hangs on startup after login.

When X does hang, killing the glxinfo process solves the problem.  The
X session hang resolves and X starts.

(At bottom is a 90qt5-opengl with some commented out code which
disables the glxinfo call and prevents the problem from occurring.)

Because the purpose of the problem code is to detect the OpenGL
version, and the older versions are no longer used (OpenGL version <
2), an easy fix would be to delete the offending code.  In this case
this means removing the entire 90qt5-opengl file since it is no longer
necessary.


Note that my configuration is an X terminal; the glxinfo call is on
the X client.  This may have somethig to do with why glxinfo hangs.

-- System Information:
Debian Release: 9.3
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libqt5gui5 depends on:
ii  fontconfig                       2.11.0-6.7+b1
ii  libc6                            2.24-11+deb9u1
ii  libdrm2                          2.4.74-1
ii  libegl1-mesa [libegl1-x11]       13.0.6-1+b2
ii  libfontconfig1                   2.11.0-6.7+b1
ii  libfreetype6                     2.6.3-3.2
ii  libgbm1                          13.0.6-1+b2
ii  libgcc1                          1:6.3.0-18
ii  libgl1-mesa-glx [libgl1]         13.0.6-1+b2
ii  libglib2.0-0                     2.50.3-2
ii  libharfbuzz0b                    1.4.2-1
ii  libice6                          2:1.0.9-2
ii  libinput10                       1.6.3-1
ii  libjpeg62-turbo                  1:1.5.1-2
ii  libmtdev1                        1.1.5-1+b1
ii  libpng16-16                      1.6.28-1
ii  libqt5core5a [qtbase-abi-5-7-1]  5.7.1+dfsg-3+b1
ii  libqt5dbus5                      5.7.1+dfsg-3+b1
ii  libqt5network5                   5.7.1+dfsg-3+b1
ii  libsm6                           2:1.2.2-1+b3
ii  libstdc++6                       6.3.0-18
ii  libudev1                         232-25+deb9u1
ii  libx11-6                         2:1.6.4-3
ii  libx11-xcb1                      2:1.6.4-3
ii  libxcb-glx0                      1.12-1
ii  libxcb-icccm4                    0.4.1-1
ii  libxcb-image0                    0.4.0-1+b2
ii  libxcb-keysyms1                  0.4.0-1+b2
ii  libxcb-randr0                    1.12-1
ii  libxcb-render-util0              0.3.9-1
ii  libxcb-render0                   1.12-1
ii  libxcb-shape0                    1.12-1
ii  libxcb-shm0                      1.12-1
ii  libxcb-sync1                     1.12-1
ii  libxcb-xfixes0                   1.12-1
ii  libxcb-xinerama0                 1.12-1
ii  libxcb-xkb1                      1.12-1
ii  libxcb1                          1.12-1
ii  libxi6                           2:1.7.9-1
ii  libxkbcommon-x11-0               0.7.1-2~deb9u1
ii  libxkbcommon0                    0.7.1-2~deb9u1
ii  zlib1g                           1:1.2.8.dfsg-5

Versions of packages libqt5gui5 recommends:
ii  libqt5svg5             5.7.1~20161021-2+b2
ii  mesa-utils             8.3.0-3
ii  qt5-gtk-platformtheme  5.7.1+dfsg-3+b1

Versions of packages libqt5gui5 suggests:
pn  qt5-image-formats-plugins  <none>
pn  qtwayland5                 <none>

-- Configuration Files:
/etc/X11/Xsession.d/90qt5-opengl changed:
if [ "$(which glxinfo)" = "" ] ; then
    echo "To detect whether software based rendering is needed for Qt 5 the glxinfo program is a requirement but it was not found on this system."
    echo "On Debian (based) systems, install the mesa-utils package."
    #echo "On RedHat (based) systems, install the glx-utils package."
else
    # Temporary hack to make X terminal work.
    OPENGL_VERSION=`LANG=C glxinfo | grep '^OpenGL version string: ' | head -n 1 | sed -e 's/^OpenGL version string: \([0-9]\).*$/\1/g'`
    if [ -n "$OPENGL_VERSION" ] && [ "$OPENGL_VERSION" -lt 2 ]; then
        QT_XCB_FORCE_SOFTWARE_OPENGL=1
        export QT_XCB_FORCE_SOFTWARE_OPENGL
    elif [ -n "$OPENGL_VERSION" ] ; then
        echo "OpenGL version: $OPENGL_VERSION."
    else
        echo "OpenGL version not found."
    fi
fi


-- no debconf information

--- End Message ---
--- Begin Message ---
Vversion: 5.8.0+dfsg-1

Karl: please note I'm closing this bug for testing and unstable, as this is 
not an issue there, read below.

On martes, 19 de diciembre de 2017 16:46:48 -03 Karl O. Pinc wrote:
[snip]
> > patch:
> Attached is a patch which prevents the problem.  Not very useful.
> It simply does not run glxinfo.

Ah, now I see, thanks.
 
> > > Because the purpose of the problem code is to detect the OpenGL
> > > version, and the older versions are no longer used (OpenGL version <
> > > 2), an easy fix would be to delete the offending code.  In this case
> > > this means removing the entire 90qt5-opengl file since it is no
> > > longer necessary.
> > 
> > That's wrong. We have users whit this kind of set up, that's why we
> > added this file.
> 
> Ok.  If you feel like explaining I'd like to understand this.  I can't
> find a opengl/mesa within Debian that's less than an opengl 2.0 API.
> But then I'm not clear on what sorts of packages implement opengl
> so I don't really know what to look for.

Hardware, the issue here is hardware support. If your video card does not 
supports OpenGL 2.0 or later you need the rasterizing for QML stuff.

> (I'm sure there were such at one point.  Are you doing this to support
> old non-debian packages/libraries?)
> 
> > So far this is the first time we hear this
> > inconvinience.
> 
> First time I've seen it also.  Started when I upgraded from Debian
> Jessie to Debian Stretch.  For what it's worth, that's the same
> time my video frame rate dropped to about 1 frame every 2 seconds
> when playing video files with avplay.  I've not bothered to debug
> this.  My desktop works fine as far as I can tell.  Can't say
> what happens with video in a browser, I've ads turned off and not
> tried to view a video at, say, youtube, since the Debian upgrade.

That's maybe because of the way stuff is being rendered, specially for Qt5. 
There are options, see below.

> > What video card do you have?
> > 
> > > Note that my configuration is an X terminal; the glxinfo call is on
> > > the X client.  This may have somethig to do with why glxinfo
> > > hangs.
> > 
> > Sorry, I did not understand that. But glxinfo needs an X session to
> > work.
> 
> This means that I sit in front of a monitor, keyboard, and mouse
> attached to a computer (the X server) attached to a network on the
> other end of which is another computer (the X client) which has a
> CPU and disk and, this is the important part, on which all programs
> are executed.  Local CPU for video, running X.  Remote CPU, running
> desktop and xterm windows for shell.

ooh, that's why we never seen it before. Right, this is not very usual. People 
tend to use other stuff like X2Go.

> So, the 90qt5-opengl file is executed on the box with the CPU.
> 
> The X client, the remote box, says this for the "lspci -nn"
> output related to video:
> 
>   01:00.0 VGA compatible controller [0300]: Advanced Micro Devices,
>   Inc. [AMD/ATI] RV620 LE [Radeon HD 3450] [1002:95c5]
> 
> FYI, the #debian irc judd bot says this about that pciid:
> 
>   [1002:95c5] is 'RV620 LE [Radeon HD 3450]' from 'Advanced
>                  Micro Devices, Inc. [AMD/ATI]' with kernel
>   modules 'snd-hda-intel', 'radeon' in stretch. See
>   also http://kmuto.jp/debian/hcl/index.rhtmlx?check=1&lspci=1002:95c\
> 5
>                  http://wiki.debian.org/ATIProprietary and the
>   out-of-tree 'fglrx', 'snd-hda-intel' module.
> 
> I poked around some time ago making sure that the X client had
> the video drivers it needs.  I thought I succeeded, but never
> use video on that box.  Attached is lsmod output from the X client.
> 
> On the X server lspci -nn says:
> 
>   00:02.0 VGA compatible controller [0300]: Intel Corporation Atom
>   Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller
>   [8086:a011]
> 
>   00:02.1 Display controller [0380]: Intel Corporation Atom
>   Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller
>   [8086:a012]
> 
> I generally use 8086:a011 (but the other is always on).
> 
> Judd says this about them:
> 
>   [16:32:05]<judd> [8086:a011] is 'Atom Processor D4xx/D5xx/N4xx/N5xx
>   Integrated Graphics Controller' from 'Intel Corporation' with
>   kernel modules 'i915', 'snd-hda-intel', 'ata-generic' in
>                  stretch. See
>   also http://kmuto.jp/debian/hcl/index.rhtmlx?check=1&lspci=8086:a011
> 
>   [16:32:17]<judd> [8086:a012] is 'Atom Processor D4xx/D5xx/N4xx/N5xx
>   Integrated Graphics Controller' from 'Intel Corporation' with
>   kernel modules 'snd-hda-intel', 'ata-generic' in stretch. See also
>                 
> http://kmuto.jp/debian/hcl/index.rhtmlx?check=1&lspci=8086:a012
> 
> Never did look at the video drivers on the X server.  I seem to have
> video so haven't bothered.
> 
> (I keep thinking I'll get some more X servers and monitors and run
> xdmx but I've never gotten around to it.)

If I understand correctly the video card is not relevant on the server side, 
as stuff will be rasterized in the client. And possibly using software instead 
of hardware.

Anyways you are better of by just removing the script. You might also want to 
try the render2d plugin, see

 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=850705

The package should be available at http://snapshot.debian.org/package/
qtdeclarative-render2d-opensource-src/ 

In newer Qt versions it's integrated in qtbase and the script you mention is 
gone, so closing for versions in testing/unstable.

For stable I think this is a wontfix, as this is a special edge case, but 
itshould be fixed by removing the script and maybe using the above mentioned 
plugin.

Please do not heasitate in telling us what where the results of using the 
plugin!!! Accroding to upstream things should go even faster.



-- 
3: Que ocurre en el escritorio de Windows cuando se abre una ventana
    * Se cierra una puerta
    Damian Nadales
    http://mx.grulic.org.ar/lurker/message/20080307.141449.a70fb2fc.es.html

Lisandro Damián Nicanor Pérez Meyer
http://perezmeyer.com.ar/
http://perezmeyer.blogspot.com/

Attachment: signature.asc
Description: This is a digitally signed message part.


--- End Message ---

Reply to: