Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WebKitWebProcess crashes because BadValue X11 Error, with NVidia drivers #342

Closed
Cybolic opened this issue May 11, 2017 · 45 comments
Closed
Labels
type: bug Something is not working as expected or the documentation is incorrect.
Milestone

Comments

@Cybolic
Copy link

Cybolic commented May 11, 2017

I get an error message stating "Integration error Failed to inject JavaScript API. Main object not found.' The application might not function properly." I'm running the latest flatpak version installed with --system.

screenshot-20170511170829-1370x739

@jiri-janousek
Copy link
Member

Hello @Cybolic. Thanks for taking the time to report your issue. I need more information to investigate it further:

@jiri-janousek jiri-janousek added type: bug Something is not working as expected or the documentation is incorrect. need info Assignee needs more information to work on this ticket. labels May 11, 2017
@Cybolic
Copy link
Author

Cybolic commented May 11, 2017

Sorry about that.
My system is Antergos Arch, updated today.
Yes, the issue happens constantly. The popup will only appear after pressing reload, before that, the application just loads to a blank grey screen (in the area where the Google Play Music logo is visible in the screenshot above).
nuvola-gogle-play-music-log.txt

@jiri-janousek
Copy link
Member

Thanks for the logs. The following snippet might be the cause of the issue.

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

(WebKitWebProcess:18): Gdk-ERROR **: The program 'WebKitWebProcess' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadValue (integer parameter out of range for operation)'.
  (Details: serial 216 error_code 2 request_code 154 (GLX) minor_code 34)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the GDK_SYNCHRONIZE environment
   variable to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

Is this a clean Nuvola flatpak installation or have you upgraded a previous flatpak build?

@Cybolic
Copy link
Author

Cybolic commented May 11, 2017

This is an upgraded installation (flatpak update --system).

@Cybolic
Copy link
Author

Cybolic commented May 11, 2017

Purging the flatpak installation and reinstalling didn't change anything.

@hutber
Copy link

hutber commented May 12, 2017

I'm always having the same or similar issue.

I get:

`)]}'

[["er",null,null,null,null,405,null,null,null,9]
]`

when I enter the app.

@jiri-janousek jiri-janousek changed the title Cannot load Google Play Music Cannot load Google Play Music - WebKitWebProcess creashes because BadValue X11 Error May 12, 2017
@jiri-janousek
Copy link
Member

Hello @jamiehutber. That seems to be a stale sign-up page (a funny Google's bug). Pressing home button should help. If not, please create a new ticket for your issue.

@hutber
Copy link

hutber commented May 12, 2017

Ah yes, thanks. I do still get an error when I get through to the login page, once entering a password it just goes black. Could I ask where the log files are stored? Then i will create a new ticket.

@jiri-janousek
Copy link
Member

See Bug Reporting Guidelines.

@jiri-janousek
Copy link
Member

@Cybolic

  • Have you upgraded any of packages related to graphics drivers recently?
  • I'm going to upgrade WebKitGTK (there have been a few fixes recently) in the flatpak builds and we'll look at this issue again.

@Cybolic
Copy link
Author

Cybolic commented May 12, 2017

Yes, my NVIDIA driver was upgraded to the latest version (381.22) in the process of updating the system.

@jiri-janousek
Copy link
Member

Hello @Cybolic. I've updated WebKitGTK+ to 2.16.2. Could your ru flatpak update --system and flatpak update --user and then check whether the issue still occurs?

If yes, is it reproducible in WebKitGTK+ MiniBrowser?

flatpak run \
--command=/app/libexec/webkit2gtk-4.0/MiniBrowser \
eu.tiliado.NuvolaAppGooglePlayMusic//stable \
https://play.google.com/music

@excieve
Copy link

excieve commented May 19, 2017

FYI: I was having this issue when installing with the GNOME Software button on Fedora but apparently it doesn't bring in some dependencies, such as GNOME platform and video driver libs. Installing with the command line works fine.

@jiri-janousek
Copy link
Member

Thanks @excieve. That's interesting. Could compare the output of following command in case of installation with GNOME software and commandline?

for KIND in app runtime; do
for LOCATION in user system; do
echo; echo ${LOCATION}-${KIND}:
flatpak list --$LOCATION --$KIND --show-details -v
done; done

@Cybolic
Copy link
Author

Cybolic commented May 23, 2017

Yup! After updating the player works again. Feel free to close this :)

@jiri-janousek
Copy link
Member

Ok @Cybolic. Glad to hear Nuvola works again.

@excieve, could it be possible that GNOME Platform received an update between your GNOME Software and command-line way of installation?

@jiri-janousek jiri-janousek removed the need info Assignee needs more information to work on this ticket. label May 23, 2017
@excieve
Copy link

excieve commented May 31, 2017

@fenryxo Sure, that's possible. I'll experiment with these two types of installation a bit later and will report if there's something unusual.

@vanyasem
Copy link

vanyasem commented Jun 1, 2017

I have the same issue. Clean flatpack installation, Elementary OS. I've updated NVidia drivers recently. Same logs. I see there's a new version of WebKitGTK+ available, so updating it may fix the issue.

@vanyasem
Copy link

vanyasem commented Jun 1, 2017

None of the music services work, white screen after clicking any button (i.e. login).

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

log.txt
That's my Debug log with Deezer.

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

And no, the issue is not reproducible in WebKitGtk MiniBrowser.

@jiri-janousek jiri-janousek reopened this Jun 2, 2017
@vanyasem
Copy link

vanyasem commented Jun 2, 2017

Also, you should probably change the title to "WebKitWebProcess crashes because of BadValue X11 Error". Because this issue affects all music services, not just Google Music (Tested GM, Deezer, and Yandex Music myself).

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

Actually, yes, they seem to appear in the same order even on same lines.

@jiri-janousek
Copy link
Member

I must admit that I have no experience with nvidia graphic cards. So I'm going to ask a lot of questions to understand the situation.

  • Do you use open source drivers of Nvidia's closed source drivers?
  • How have you updated your drivers recently?

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

I've updated my driver's using apt update, as usual. As a package.

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

It's okay to ask questions, the thing is to resolve the issue as a result. I'll be able to give more details later, as I'm not at home rn.

@jiri-janousek
Copy link
Member

sudo ldconfig -p | grep -i gl.so could also provide some info.

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

grep output

libwayland-egl.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libwayland-egl.so.1
libwayland-egl.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libwayland-egl.so
libobs-opengl.so.0 (libc6,x86-64) => /usr/lib/libobs-opengl.so.0
libobs-opengl.so (libc6,x86-64) => /usr/lib/libobs-opengl.so
libcogl.so.20 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcogl.so.20
libcogl.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcogl.so
libQtOpenGL.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
libOpenGL.so.0 (libc6,x86-64) => /usr/lib/nvidia-375/libOpenGL.so.0
libOpenGL.so (libc6,x86-64) => /usr/lib/nvidia-375/libOpenGL.so
libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-375/libGL.so.1
libGL.so.1 (libc6) => /usr/lib32/nvidia-375/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64) => /usr/lib/nvidia-375/libGL.so
libGL.so (libc6) => /usr/lib32/nvidia-375/libGL.so
libEGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-375/libEGL.so.1
libEGL.so.1 (libc6) => /usr/lib32/nvidia-375/libEGL.so.1
libEGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libEGL.so
libEGL.so (libc6,x86-64) => /usr/lib/nvidia-375/libEGL.so
libEGL.so (libc6) => /usr/lib32/nvidia-375/libEGL.so

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

I looked up and found out that I have proprietary NVidia drivers installed

@jiri-janousek
Copy link
Member

Upstream issue: flatpak/flatpak#138

@jiri-janousek
Copy link
Member

Could you find out the version of nvidia driver? Maybe from the version of the driver package. It should be 375-something. Flatpak seems to support following versions:

flatpak remote-ls gnome | grep nvidia
org.freedesktop.Platform.GL.nvidia-304-134
org.freedesktop.Platform.GL.nvidia-304-135
org.freedesktop.Platform.GL.nvidia-340-101
org.freedesktop.Platform.GL.nvidia-340-102
org.freedesktop.Platform.GL.nvidia-367-57 
org.freedesktop.Platform.GL.nvidia-370-28 
org.freedesktop.Platform.GL.nvidia-375-26 
org.freedesktop.Platform.GL.nvidia-375-39 
org.freedesktop.Platform.GL.nvidia-378-13 
org.freedesktop.Platform.GL.nvidia-381-09 
org.freedesktop.Platform.GL.nvidia-381-22 

@vanyasem
Copy link

vanyasem commented Jun 2, 2017

Driver Version: 375.66

@jiri-janousek
Copy link
Member

Hello @Cybolic & @excieve. You have also been affected by this issue. Do you use proprietary nvidia drivers? If so, which version? Thanks.

@excieve
Copy link

excieve commented Jun 2, 2017

In my case this is nvidia driver 381.22. There's a corresponding flatpak platform package pulled in automatically:

$ flatpak list
Ref                                                  Options               
eu.tiliado.Nuvola/x86_64/stable                      user,current          
eu.tiliado.NuvolaAppGooglePlayMusic/x86_64/stable    user,current          
org.freedesktop.Platform.GL.nvidia-381-22/i386/1.4   user,runtime          
org.freedesktop.Platform.GL.nvidia-381-22/x86_64/1.4 user,runtime          
org.gnome.Platform.Locale/x86_64/3.24                user,runtime,partial  
org.gnome.Platform/x86_64/3.24                       user,runtime          
eu.tiliado.Nuvola/x86_64/stable                      system,current        
eu.tiliado.NuvolaAppGooglePlayMusic/x86_64/stable    system,current        
org.freedesktop.Platform.GL.nvidia-381-22/i386/1.4   system,runtime        
org.freedesktop.Platform.GL.nvidia-381-22/x86_64/1.4 system,runtime        
org.gnome.Platform.Locale/x86_64/3.24                system,runtime,partial
org.gnome.Platform/x86_64/3.24                       system,runtime   

@Cybolic
Copy link
Author

Cybolic commented Jun 2, 2017

I'm on the same NVIDIA driver on Arch with the latest flatpak packages and I'm not seeing the issue anymore.

$ flatpak list
Ref                                                  Options               
eu.tiliado.Nuvola/x86_64/stable                      system,current        
eu.tiliado.NuvolaAppGooglePlayMusic/x86_64/stable    system,current        
org.freedesktop.Platform.GL.nvidia-381-22/x86_64/1.4 system,runtime        
org.freedesktop.Platform.Icontheme.Paper/x86_64/1.0  system,runtime        
org.gnome.Platform.Locale/x86_64/3.22                system,runtime,partial
org.gnome.Platform.Locale/x86_64/3.24                system,runtime,partial
org.gnome.Platform/x86_64/3.22                       system,runtime        
org.gnome.Platform/x86_64/3.24                       system,runtime        
org.gtk.Gtk3theme.Arc-Darker/x86_64/3.22             system,runtime

@vanyasem
Copy link

vanyasem commented Jun 3, 2017

I updated my drivers to 381.22. I can confirm the issue is resolved. It seems that flatpak doesn't support 375.66, so it's not a bug of this app.

@jiri-janousek
Copy link
Member

🎉 Great! Are both error messages 1 and two from #342 (comment) gone?

I leave this issue open as I think Nuvola should somehow detect that there is no matching nvidia driver and show a message to user instead of crashing web process. Could anyone provide me with output of the following command?

flatpak run --command=ls eu.tiliado.Nuvola//stable -FR /usr/lib/GL/

Btw @excieve, you have duplicate flatpaks in system and user destinations. Is there any reason for that?

@excieve
Copy link

excieve commented Jun 3, 2017

Could anyone provide me with output of the following command?

$ flatpak run --command=ls eu.tiliado.Nuvola//stable -FR /usr/lib/GL/
/usr/lib/GL/:
glvnd/	nvidia-381-22/	vulkan/

/usr/lib/GL/glvnd:
egl_vendor.d/

/usr/lib/GL/glvnd/egl_vendor.d:
10_nvidia.json@

/usr/lib/GL/nvidia-381-22:
bin/  extra/  glvnd@  lib@  manifest.json*  vulkan@

/usr/lib/GL/nvidia-381-22/bin:
apply_extra*

/usr/lib/GL/nvidia-381-22/extra:
glvnd/				libGLESv2_nvidia.so.381.22*  libglx.so.381.22*		    libnvidia-encode.so.381.22*		  libnvidia-gtk2.so.381.22*    libnvidia-ptxjitcompiler.so.381.22*  vulkan/
libEGL_nvidia.so.0@		libGLX_indirect.so.0@	     libnvcuvid.so.381.22*	    libnvidia-fatbinaryloader.so.381.22*  libnvidia-gtk3.so.381.22*    libnvidia-tls.so.381.22*
libEGL_nvidia.so.381.22*	libGLX_nvidia.so.0@	     libnvidia-cfg.so.381.22*	    libnvidia-fbc.so.381.22*		  libnvidia-ifr.so.381.22*     libnvidia-wfb.so.381.22*
libGLESv1_CM_nvidia.so.381.22*	libGLX_nvidia.so.381.22*     libnvidia-compiler.so.381.22*  libnvidia-glcore.so.381.22*		  libnvidia-ml.so.381.22*      libvdpau_nvidia.so.381.22*
libGLESv2_nvidia.so.2@		libcuda.so.381.22*	     libnvidia-eglcore.so.381.22*   libnvidia-glsi.so.381.22*		  libnvidia-opencl.so.381.22*  tls/

/usr/lib/GL/nvidia-381-22/extra/glvnd:
egl_vendor.d/

/usr/lib/GL/nvidia-381-22/extra/glvnd/egl_vendor.d:
10_nvidia.json

/usr/lib/GL/nvidia-381-22/extra/tls:
libnvidia-tls.so.381.22*

/usr/lib/GL/nvidia-381-22/extra/vulkan:
icd.d/

/usr/lib/GL/nvidia-381-22/extra/vulkan/icd.d:
nvidia_icd.json

/usr/lib/GL/vulkan:
icd.d/

/usr/lib/GL/vulkan/icd.d:
nvidia_icd.json@

Btw @excieve, you have duplicate flatpaks in system and user destinations. Is there any reason for that?

Not sure, but I suspect this might be due to first trying to install using the GNOME Software and then manually. Maybe Software tries to install in system destination. I'll try to purge everything and then reinstall using one of the methods to see what it does.

@excieve
Copy link

excieve commented Jun 3, 2017

So I just purged everything both system or user in flatpak and tried installing Nuvola Apps and Google Play app using GNOME Software. It actually installed everything in user destination unlike manual method (which in the instructions suggests using sudo) installing system-wide.

However, this Software installation didn't pull in nvidia driver platform. So I executed flatpak update --user (without sudo) and it automatically installed org.freedesktop.Platform.GL.nvidia-381-22 and org.gnome.Platform.Locale. It does install it when using the manual method from the beginning.

So there appear to be two issues:

  1. GNOME Software installing per-user, while manual (when following instructions) is system-wide
  2. GNOME Software method doesn't pull additional (but required) dependencies

@jiri-janousek
Copy link
Member

What does flatpak run --command=cat eu.tiliado.Nuvola//stable /sys/module/nvidia/version show?

GNOME Software installing per-user, while manual (when following instructions) is system-wide

I think both ways are ok. The issue is whether GNOME Software can update both locations.

GNOME Software method doesn't pull additional (but required) dependencies

That's this bug: Flatpak backend doesn't seem to install related refs

Anyway, since there are so many flatpak-related bugs in GNOME Software, I'm going to update instructions not to use GNOME Software at all. In addition, I'll remove sudo because it is not necessary.

jiri-janousek added a commit that referenced this issue Jun 4, 2017
Checks that /sys/module/nvidia/version has corresponding
/usr/lib/GL/nvidia-X-Y directory.

Issue: #342

Signed-off-by: Jiří Janoušek <[email protected]>
@jiri-janousek
Copy link
Member

Could anyone test master branch of Nuvola flatpak with these steps? Thanks.

  1. Uninstall all Nuvola flatpaks
  2. Uninstall nvidia flatpaks
  3. Install eu.tiliado.Nuvola//master
  4. Make sure nvidia flatpak is not installed
  5. flatpak run eu.tiliado.Nuvola//master -D
  6. Nuvola should show error dialog about missing driver and a link to Graphics Drivers wiki page
  7. Install nvidia flatpak according to instructions.
  8. flatpak run eu.tiliado.Nuvola//master -D
  9. There should be no error.

@jiri-janousek jiri-janousek added the need info Assignee needs more information to work on this ticket. label Jun 4, 2017
@jiri-janousek
Copy link
Member

Changes have been pushed to the stable flatpak branch. Not sure whether it works as I haven't received any feedback. We'll see.

@jiri-janousek jiri-janousek removed the need info Assignee needs more information to work on this ticket. label Jun 21, 2017
@jiri-janousek jiri-janousek added this to the 4.5 milestone Jun 21, 2017
jiri-janousek added a commit that referenced this issue Jun 25, 2017
New Features:

  * Nuvola Apps Runtime supports the integration of a progress bar and
    volume management. Web app scripts which use this feature can not
    only provide track length & position and current volume but also
    allow user to change that remotely, e.g. from Media Player GNOME
    Shell extension. At the present, only Deezer and Google Play Music
    scripts use these features but others will follow.
    Issue: #22 Issue: #155
  * If Nuvola Apps Runtime detect a Nvidia graphics card, it checks
    whether the flatpak extension with corresponding graphics driver is
    installed. If it isn't, e.g. because of a bug in GNOME Software,
    an error message is shown to provide the user with installation
    instructions. Issue: #342
  * After a lot of effort, a workaround for the instability of Flash
    plugin was found out and is used until WebKitGTK developers find a
    proper fix. However, it is applied only in flatpak builds because it
    may have negative impact on other WebKitGTK applications otherwise.
    Issue: #354

Bug fixes:

  * Wrong command in desktop launcher was fixed.
    Issue: #348
  * Fix wscript for non-git builds. Issue: tiliado/diorite#16

News for Script Maintainers:

  * `Nuvola.VERSION_MICRO` contains micro version of Nuvola Runtime.
  * `Nuvola.API_VERSION_MAJOR` and `Nuvola.API_VERSION_MINOR` are now
    deprecated aliases of `Nuvola.VERSION_MAJOR`
    and `Nuvola.VERSION_MINOR`.
  * Tutorial was updated to use Nuvola ADK 4.4.
  * Added documentation of web app requirement flags.
  * Added documentation of user agent quirks.
  * New API for progress bar integration.
  * New API for volume management integration.
  * New utility functions `Nuvola.encodeVersion` and
    `Nuvola.checkVersion`.
  * `Nuvola.triggerMouseEvent` and `clickOnElement` support relative
    x & y coordinates.

Under the Hood:

  * New dependencies: libdrm >= 2.2 and libdri2 >= 1.0
  * Nuvola checks whether VDPAU and VA-API drivers are installed and
    prints debugging information to console. It will show error dialog
    in the future though, so make sure the drivers are installed.
    Issue: #280
  * Internal icon loading code was refactored. Legacy icon.png and
    nuvolaplayer3_XXX icons are no longer supported.
    eu.tiliado.NuvolaAppXxx is used everywhere.
    Issue: #353

Signed-off-by: Jiří Janoušek <[email protected]>
@jiri-janousek
Copy link
Member

Fix released in Nuvola 4.5.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug Something is not working as expected or the documentation is incorrect.
Projects
None yet
Development

No branches or pull requests

5 participants