[Webkit-unassigned] [Bug 166740] [GTK] WebProcess from patched WebKitGtk+ 2.15.x receives BadAccess X Error

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Feb 5 01:24:54 PST 2017


https://bugs.webkit.org/show_bug.cgi?id=166740

Carlos Garcia Campos <cgarcia at igalia.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cgarcia at igalia.com

--- Comment #3 from Carlos Garcia Campos <cgarcia at igalia.com> ---
(In reply to comment #1)
> Created attachment 300626 [details]
> Another BT from gdb for the WebProcess
> 
> Also with Epiphany 3.22.5 and WebKit 2.15.4.
> 
> I'm running Epiphany with the dconf key:
> 
> "process-model" = "shared-secondary-process"
> 
> And the env variable:
> 
> "export G_DEBUG=fatal-criticals"
> 
> The compilation was done with CMake args:
> 
> '-DENABLE_THREADED_COMPOSITOR=OFF -DPORT=GTK -DCMAKE_BUILD_TYPE=Release
> -DENABLE_MINIBROWSER=ON -DCMAKE_C_FLAGS_RELEASE="-O0 -g -DNDEBUG 
> -DG_DISABLE_CAST_CHECKS" -DCMAKE_CXX_FLAGS_RELEASE="-O0 -g -DNDEBUG
> -DG_DISABLE_CAST_CHECKS"'
> 
> The WebProcess, eventually, receives a SIGTRAP.

I don't think you mare building with -DENABLE_THREADED_COMPOSITOR=OFF or the build option doesn't work, because your bts have a compositing thread :-)

> ---
> 
> The error in the terminal is:
> 
> (WebKitWebProcess:26855): Gdk-ERROR **: The program 'WebKitWebProcess'
> received an X Window System error.                                          
> 
> This probably reflects a bug in the program.                                
> 
> The error was 'BadAccess (attempt to access private resource denied)'.      
> 
>   (Details: serial 1923949 error_code 10 request_code 130 (MIT-SHM)
> minor_code 1)                                                               
> 
>   (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.)

This is tricky because the error is always processed in the next run loop iteration, so we don't really know what caused it. There are always gst threads there, so the media player is involve, and in two of the bts the threaded compositor is waiting for something after a xcb_present_pixmap done in swap buffers. Maybe you really need to run with GDK_SYNCHRONIZE to make sure the errors is processed right when it happens and we can see in the bt what caused it.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170205/b104664e/attachment.html>


More information about the webkit-unassigned mailing list