Bug 106072

Summary: [EFL] Reloading WebGL content crashes the web process.
Product: WebKit Reporter: Joone Hur <joone>
Component: WebKit EFLAssignee: Kalyan <kalyan.kondapally>
Status: RESOLVED INVALID    
Severity: Normal CC: kalyan.kondapally, kenneth, laszlo.gombos, lucas.de.marchi, ostap73
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Linux   
URL: https://www.webkit.org/blog-files/webgl/TeapotPerPixel.html
Attachments:
Description Flags
WIP none

Description Joone Hur 2013-01-03 18:28:42 PST
The WebGL content crashes the web process when reloading it.
It seems that all WebGL contents have the same problem.
Comment 1 Viatcheslav Ostapenko 2013-01-03 21:05:24 PST
(In reply to comment #0)
> The WebGL content crashes the web process when reloading it.
> It seems that all WebGL contents have the same problem.

Could you paste the call stack.
I can't reproduce problem with my recent build.
Comment 2 Joone Hur 2013-01-04 00:21:41 PST
(In reply to comment #1)
> (In reply to comment #0)
> > The WebGL content crashes the web process when reloading it.
> > It seems that all WebGL contents have the same problem.
> 
> Could you paste the call stack.
> I can't reproduce problem with my recent build.

Yes, I checked this again on my laptop, but there is no problem while reloading WebGL content. It seems to be only problem with my desktop PC.

Anyway, the call stack is like this:

0 XQueryExtension () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#1 XInitExtension () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#2 XextAddDisplay () from /usr/lib/x86_64-linux-gnu/libXext.so.6
#3 ?? () from /usr/lib/fglrx/libGL.so.1
#4 ?? () from /usr/lib/fglrx/libGL.so.1
#5 glXMakeCurrent () from /usr/lib/fglrx/libGL.so.1
#6 WebCore::GLXOffScreenContext::platformReleaseCurrent (this=) at /home/joone/git/WebKitEfl/Source/WebCore/platform/graphics/surfaces/glx/GLXContext.cpp:112#7 WebCore::GLPlatformContext::releaseCurrent (this=) at /home/joone/git/WebKitEfl/Source/WebCore/platform/graphics/opengl/GLPlatformContext.cpp:240
#8 WebCore::GraphicsContext3DPrivate::releaseResources (this=) at /home/joone/git/WebKitEfl/Source/WebCore/platform/graphics/efl/GraphicsContext3DPrivate.cpp:84
#9 WebCore::GraphicsContext3D::~GraphicsContext3D (this=, __in_chrg=<optimized out>) at /home/joone/git/WebKitEfl/Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp:160
Comment 3 Kalyan 2013-01-15 00:46:46 PST
k, issue here could be that the display is closed before calling release content.
Comment 4 Kalyan 2013-01-15 02:25:55 PST
Created attachment 182726 [details]
WIP
Comment 5 Kalyan 2013-01-15 02:28:42 PST
(In reply to comment #4)
> Created an attachment (id=182726) [details]
> WIP

Joone: Would it be possible for you to try this patch and see if you still have the crash ??

The patch basically fixes some memory leaks and doesn't close native display till the surface object is actually destroyed.
Comment 6 Kalyan 2013-01-19 16:31:56 PST
Marking it as Invalid. Please create a new one if you still have the issue with latest code.