| Summary: | nspluginwrapper breaks 64-bit flash-plugin on vkontakte.ru | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Pavel Roskin <plroskin> |
| Component: | nspluginwrapper | Assignee: | Martin Stransky <stransky> |
| Status: | CLOSED WORKSFORME | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 16 | CC: | caillon, drfudgeboy, robatino, stransky |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-11-03 17:25:49 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Pavel Roskin
2011-10-28 21:34:59 UTC
The two systems where the problem didn't occur run Fedora 15 with all updates. The bug only occurred on the Fedora 16 system. I tried uninstalling and reinstalling nspluginwrapper on a Fedora 15 system, and now I have the same bug on Fedora 15. It's like something was right, but the reinstallaton broke it. Here's the data for Fedora 15: nspluginwrapper-1.4.4-3.fc15.x86_64 flash-plugin-11.0.1.152-release.x86_64 firefox-7.0.1-3.fc15.x86_64 Gdk-ERROR **: The program 'npviewer.bin' received an X Window System error. This probably reflects a bug in the program. The error was 'BadMatch (invalid parameter attributes)'. (Details: serial 122 error_code 8 request_code 139 minor_code 3) (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 --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) aborting... *** NSPlugin Wrapper *** ERROR: NPP_HandleEvent() wait for reply: Connection closed *** NSPlugin Wrapper *** WARNING:(../src/npw-wrapper.c:2848):invoke_NPP_HandleEvent: assertion failed: (rpc_method_invoke_possible(plugin->connection)) I tried to debug the problem (on the F15 system, as I don't have access to the F16 system at the moment). It turns out npviewer.bin simply crashes due to an X11 error. I edited npviewer.sh to add the "--sync" argument. I installed debuginfo for all packages gdb requested, although debuginfo for glibc and nss could not be installed. I could not get qdb to read symbols for npviewer.bin (it reports "warning: Can't read pathname for load map: Input/output error.")
So I compiled the current nspluginwrapper from git (commit a9e1623e4498aa1212e6f777dec31314b85e4901). I only replaced npviewer.bin, the rest is from the Fedora package. Here's the backtrace I got. It looks like the flash plugin wants gdk to draw some image, but gdk gets an error from X11. I'm afraid I won't be able to figure out what's wrong and what is the role on nspluginwrapper in all that.
Core was generated by `/usr/lib64/nspluginwrapper/npviewer.bin --sync --plugin /usr/lib64/mozilla/plug'.
Program terminated with signal 6, Aborted.
#0 0x00000032e5435215 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install glibc-2.14.1-1.x86_64 nspr-4.8.8-4.fc15.x86_64
(gdb) where
#0 0x00000032e5435215 in raise () from /lib64/libc.so.6
#1 0x00000032e5436b2b in abort () from /lib64/libc.so.6
#2 0x00000032e744b5ee in g_logv (log_domain=0x7f08a4ac4b77 "Gdk", log_level=<optimized out>,
format=0x7f08a4ae377e "%s", args1=0x7fffac759d38) at gmessages.c:557
#3 0x00000032e744b682 in g_log (log_domain=<optimized out>, log_level=<optimized out>,
format=<optimized out>) at gmessages.c:577
#4 0x00007f08a4aadb7b in gdk_x_error (error=<optimized out>, display=<optimized out>)
at gdkmain-x11.c:486
#5 gdk_x_error (display=<optimized out>, error=<optimized out>) at gdkmain-x11.c:456
#6 0x00000032e884810f in _XError (dpy=0x21d8a00, rep=<optimized out>) at XlibInt.c:1583
#7 0x00000032e8844f91 in handle_error (dpy=0x21d8a00, err=0x221bfd0, in_XReply=<optimized out>)
at xcb_io.c:166
#8 0x00000032e8844fd5 in handle_response (dpy=0x21d8a00, response=0x221bfd0,
in_XReply=<optimized out>) at xcb_io.c:266
#9 0x00000032e8845de0 in _XReply (dpy=0x21d8a00, rep=0x7fffac75a060, extra=0, discard=1)
at xcb_io.c:566
#10 0x00000032e88415a3 in XSync (dpy=0x21d8a00, discard=0) at Sync.c:44
#11 0x00000032e884164b in _XSyncFunction (dpy=<optimized out>) at Synchro.c:35
#12 0x00000032e98098d9 in XShmPutImage (dpy=0x21d8a00, d=10488463, gc=0x221e0f0, image=0x221ac00,
src_x=0, src_y=0, dst_x=144, dst_y=103, src_width=720, src_height=358, send_event=0)
at XShm.c:352
#13 0x00007f08a4a9f44e in gdk_x11_draw_image (drawable=<optimized out>, gc=<optimized out>,
image=<optimized out>, xsrc=0, ysrc=0, xdest=144, ydest=103, width=720, height=358)
at gdkdrawable-x11.c:847
#14 0x00007f08a363ce88 in ?? () from /usr/lib64/mozilla/plugins/libflashplayer.so
#15 0x00007f08a360369b in ?? () from /usr/lib64/mozilla/plugins/libflashplayer.so
#16 0x00007f08a32bfde8 in ?? () from /usr/lib64/mozilla/plugins/libflashplayer.so
#17 0x00007f08a32b655b in ?? () from /usr/lib64/mozilla/plugins/libflashplayer.so
#18 0x00007f08a32bd119 in ?? () from /usr/lib64/mozilla/plugins/libflashplayer.so
#19 0x000000000040e288 in g_NPP_HandleEvent (instance=0x21f3890, event=0x7fffac75a5d0)
at /home/proski/src/nspluginwrapper/src/npw-viewer.c:4491
#20 0x000000000040e358 in handle_NPP_HandleEvent (connection=0x21efa50)
at /home/proski/src/nspluginwrapper/src/npw-viewer.c:4518
#21 0x0000000000416a6c in _rpc_dispatch_1 (connection=0x21efa50, message=0x7fffac75a730)
at /home/proski/src/nspluginwrapper/src/rpc.c:1591
#22 0x0000000000416b2e in _rpc_dispatch (connection=0x21efa50, message=0x7fffac75a730)
at /home/proski/src/nspluginwrapper/src/rpc.c:1622
#23 0x0000000000416d7a in rpc_dispatch (connection=0x21efa50)
at /home/proski/src/nspluginwrapper/src/rpc.c:1694
#24 0x000000000040f1b6 in do_main (argc=1, argv=0x7fffac75c978, connection_path=
0x7fffac75e0ba "/org/wrapper/NSPlugins/libflashplayer.so/19726-2/481531494")
at /home/proski/src/nspluginwrapper/src/npw-viewer.c:5007
#25 0x000000000040fa71 in main (argc=2, argv=0x7fffac75c978)
at /home/proski/src/nspluginwrapper/src/npw-viewer.c:5184
(gdb)
Yeah, I guess is some problem in X/X drivers or so. Just try to remove nspluginwrapper...you don't need it for 64-bit flash. Also, what says: $ps axf | egrep "nspluginwrapper|plugin" is nspluginwrapper run in plugin-container or not? The video works as for me on F16/x86_64. OK, I'm on up-to-date Fedora 16 now, and I reinstalled nspluginwrapper from Fedora with no changes. That command doesn't find anything but itself if I'm on the video page I mentioned: $ ps axf | egrep "nspluginwrapper|plugin" 4660 pts/3 S+ 0:00 \_ egrep --color=auto nspluginwrapper|plugin I believe that's because npviewer.bin has already crashed. If I'm playing a video on youtube, the wrapper is found: $ ps axf | egrep "nspluginwrapper|plugin" 4795 pts/3 S+ 0:00 \_ egrep --color=auto nspluginwrapper|plugin 4769 ? Sl 0:01 \_ /usr/lib64/nspluginwrapper/npviewer.bin --plugin /usr/lib64/mozilla/plugins/libflashplayer.so --connection /org/wrapper/NSPlugins/libflashplayer.so/4665-3/538324956 okay. If it works w/o nspluginwrapper just remove it, you don't need it for the flash plugin. OK. I hoped to find an easy-to-fix bug, but it looks more complicated than I expected. This is happening for me on http://www.bbc.co.uk/news/ It doesn't happen on the BBC iPlayer site. I can confirm that uninstalling nspluginwrapper avoids the problem. This is also happening on F17 beta. Why is nspluginwrapper trying to wrap a 64-bit plugin? |