Bug 93614 - Detect hanging OpenGL drivers & disable GL ...
Summary: Detect hanging OpenGL drivers & disable GL ...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
4.2.8.2 release
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:5.1.0 target:5.0.2
Keywords:
Depends on:
Blocks: VCL-OpenGL
  Show dependency treegraph
 
Reported: 2015-08-24 07:56 UTC by Michael Meeks
Modified: 2016-10-25 19:23 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
output of glewinfo.exe (231.54 KB, text/plain)
2015-08-24 11:20 UTC, Regina Henschel
Details
output of visualinfo.exe (12.14 KB, text/plain)
2015-08-24 11:20 UTC, Regina Henschel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Meeks 2015-08-24 07:56:07 UTC
Regina reports in tdf#93547 that her OpenGL stack hangs during presentations - which raises a question of how we can detect this sort of thing [ not so hard using another thread and the existing GL zone I think ].

Sounds worth doing.
Comment 1 Michael Meeks 2015-08-24 07:58:04 UTC
Regina - can you confirm that the problem persists when the DirectX canvas is turned off (ie. not 'use hardware acceleration' in the settings) ? it is interesting that the UI renders, but not presentations =) can you also confirm that you re-started before turning on the OpenGL backend ? [ perhaps this is some inconsistent setting problem somewhere ].
Comment 2 Regina Henschel 2015-08-24 09:54:28 UTC
When I disable 'Use hardware acceleration', then LibreOffice still hangs.

Yes, I have always restart LibreOffice after changing the view settings.

In edit mode I get the blue duck, which indicates, that OpenGL is tried. When I goto presentation, then the yellow duck of the replacement is shown.

Are the output of glewinfo.exe and visualinfo.exe (tools by Markus Mohrhard) useful here?
Comment 3 Michael Meeks 2015-08-24 10:56:55 UTC
Hi Regina, yes that output is always useful =) thanks ! having said that - I'd prefer not to black-list your driver/hardware yet - but instead it'd be great to have you test a fix for this bug which I'll work on perhaps tomorrow.

Thanks !
Comment 4 Regina Henschel 2015-08-24 11:20:21 UTC
Created attachment 118112 [details]
output of glewinfo.exe
Comment 5 Regina Henschel 2015-08-24 11:20:50 UTC
Created attachment 118113 [details]
output of visualinfo.exe
Comment 6 Michael Meeks 2015-08-25 10:47:40 UTC
Pushed to gerrit / CI, and thence onwards to master & -5-0. Testing much appreciated.
    https://gerrit.libreoffice.org/17986
Comment 7 Markus Mohrhard 2015-08-25 14:10:02 UTC
@Michael: All this will not help Regina as I think her issue is in the gltf code.

I'm not sure if we can handle her case that easy. I'm actually not completely sure if my blacklist covers the gltf code.

Currently I have no idea what might be going wrong in her case. The driver information look like they support all the necessary features so we are somewhere in the broken driver area.
Comment 8 Commit Notification 2015-08-25 17:09:11 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=74bc7cb59c1bc3f7acdb4d1492fe563ebcefee6c

tdf#93614 - detect hanging OpenGL drivers with a watchdog.

It will be available in 5.1.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 9 Michael Meeks 2015-08-25 17:55:04 UTC
Review of: https://gerrit.libreoffice.org/17995 appreciated for -5-0 =)
Comment 10 Commit Notification 2015-08-26 07:26:38 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-5-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=e207dffe24aaec4d446baca67ffbbd6f67f52484&h=libreoffice-5-0

tdf#93614 - detect hanging OpenGL drivers with a watchdog.

It will be available in 5.0.2.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 11 Regina Henschel 2015-08-27 18:54:31 UTC
I have now tested it with an own debug-build with Version: 5.1.0.0.alpha1+
Build ID: d3de490437df4c9093f32e97fc185066d64c0f46 Locale: de-DE (de_DE). A current daily build for 32bit Windows is still not available.

Start LO, load document "media_embedding.odp", start presentation, press Esc.
"Use OpenGL for all rendering" was always off.

A "Hardware acceleration" off, "Allow OpenGL" off: Edit mode in 5s.
B                         on,                 off: Edit mode in 2s.
C                         off,                on : Edit mode in 5s.
D                         on,                 on : Edit mode in 4s.
Presentations with regular content react immediately on Esc key. But it comes back into edit mode, that is an improvement.


Start LO, load document "media_embedding.odp", start presentation. Click on free area. Because the presentation has only this one slide "Click to exit presentation" should appear.
"Use OpenGL for all rendering" was always off.
In all four combinations A,B,C,D listed above, I get this: After the click nothing happens, after around 20s the mouse pointer disappears, still nothing happens, I have waited further 40s. When I call task manager, then LO reacts immediately and shows the "Click to exit presentation" text and after click goes to edit mode. So I need not kill the process, but behavior is still not correct.

When I set "Use OpenGL for all rendering" to "on", then the whole UI is damaged, so I did not test combinations with that.
Comment 12 Michael Meeks 2015-08-28 06:23:37 UTC
Hi Regina - as Markus says, I think you have a different bug related to gltf rendering in impress (which is FWIW not protected by an OpenGLZone guard); so - I guess if it is not hanging, but simply failing to render for you, then that is reasonbly good news; worth filing another issue I think.
Comment 13 Regina Henschel 2015-08-28 11:35:47 UTC
I have written a new bug report https://bugs.documentfoundation.org/show_bug.cgi?id=93740