<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>275099</bug_id>
          
          <creation_ts>2024-06-04 01:39:58 -0700</creation_ts>
          <short_desc>[WPE] WPEWebProcess : allocateMoreOutOfLineStorage crash</short_desc>
          <delta_ts>2026-01-19 00:30:03 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wouter Vanhauwaert">w.vanhauwaert</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2039608</commentid>
    <comment_count>0</comment_count>
    <who name="Wouter Vanhauwaert">w.vanhauwaert</who>
    <bug_when>2024-06-04 01:39:58 -0700</bug_when>
    <thetext>In our application (sending and interpreting websocket data on regular time, running on imx53 if that matters), after a while we get a crash of WPEWebProcess. This results in a screen which shows:
&quot;The renderer process crashed. Reloading the page may fix intermittent failures.&quot;

Backtrace got me to:

(gdb) bt #0 0xb4701ebc in JSC::JSObject::allocateMoreOutOfLineStorage(JSC::VM&amp;, unsigned int, unsigned int) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#1 0xb478ba26 in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#2 0xb4789b32 in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#3 0xb4789b32 in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#4 0xb478884c in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#5 0xb4789b32 in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#6 0xb4789b32 in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#7 0xb478f1d2 in JSC::LiteralParser&lt;unsigned char&gt;::parseRecursivelyEntry(JSC::VM&amp;) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#8 0xb46f5b22 in JSC::jsonProtoFuncParse(JSC::JSGlobalObject*, JSC::CallFrame*) () from /home/wv/debugfs/usr/lib/libWPEWebKit-2.0.so.1 
#9 0xad2ff128 in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Anyone has an idea? Of idea to dig further?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2041148</commentid>
    <comment_count>1</comment_count>
    <who name="Wouter Vanhauwaert">w.vanhauwaert</who>
    <bug_when>2024-06-13 04:33:15 -0700</bug_when>
    <thetext>same function, different backtrace

#0  0xb471eebc in JSC::JSObject::allocateMoreOutOfLineStorage(JSC::VM&amp;, unsigned int, unsigned int) () from /opt/nfsroot/rootfs_imx53_scarthgap/usr/lib/libWPEWebKit-2.0.so.1.3.2
#1  0xb423dad4 in WTF::ASCIILiteral JSC::JSObject::putDirectInternal&lt;(JSC::JSObject::PutMode)0&gt;(JSC::VM&amp;, JSC::PropertyName, JSC::JSValue, unsigned int, JSC::PutPropertySlot&amp;) ()
   from /opt/nfsroot/rootfs_imx53_scarthgap/usr/lib/libWPEWebKit-2.0.so.1.3.2
#2  0xb4527966 in llint_slow_path_put_by_id () from /opt/nfsroot/rootfs_imx53_scarthgap/usr/lib/libWPEWebKit-2.0.so.1.3.2
#3  0xb6508ab8 in llint_op_put_by_id () from /opt/nfsroot/rootfs_imx53_scarthgap/usr/lib/libWPEWebKit-2.0.so.1.3.2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2143923</commentid>
    <comment_count>2</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2025-09-18 05:10:09 -0700</bug_when>
    <thetext>It looks like this is the same as bug #295780 as pointer by Wouter in the WPE chat room -- the other one has a bit more of information, so I am going to close this one as duplicate.

*** This bug has been marked as a duplicate of bug 295780 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2172953</commentid>
    <comment_count>3</comment_count>
    <who name="Wouter Vanhauwaert">w.vanhauwaert</who>
    <bug_when>2026-01-19 00:28:18 -0800</bug_when>
    <thetext>It appears no duplicate of the earlier mentioned bug. 
Result looks the same (issue in memory allocation), but origin differs. I took a step back and avoided the recursive parsing by adding JSC_useRecursiveJSONParse=false to the environment and issue seems gone</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2172954</commentid>
    <comment_count>4</comment_count>
    <who name="Wouter Vanhauwaert">w.vanhauwaert</who>
    <bug_when>2026-01-19 00:30:03 -0800</bug_when>
    <thetext>Hitting same on imx6q, rdk-vivante backend (no cog) 

Core was generated by `/usr/libexec/wpe-webkit-1.1/WPEWebProcess 23 27 31&apos;.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x7419c8ec in JSC::JSObject::allocateMoreOutOfLineStorage(JSC::VM&amp;, unsigned int, unsigned int) () from ./usr/lib/libWPEWebKit-1.1.so.0
[Current thread is 1 (LWP 700)]
(gdb) bt
#0  0x7419c8ec in JSC::JSObject::allocateMoreOutOfLineStorage(JSC::VM&amp;, unsigned int, unsigned int) () from ./usr/lib/libWPEWebKit-1.1.so.0
#1  0x742741c6 in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#2  0x7427093c in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#3  0x7427093c in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#4  0x7426fc60 in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#5  0x7427093c in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#6  0x7427093c in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursively(JSC::VM&amp;, unsigned char*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#7  0x7427a0a0 in JSC::LiteralParser&lt;unsigned char, (JSC::JSONReviverMode)0&gt;::parseRecursivelyEntry(JSC::VM&amp;) () from ./usr/lib/libWPEWebKit-1.1.so.0
#8  0x74192484 in JSC::jsonProtoFuncParse(JSC::JSGlobalObject*, JSC::CallFrame*) () from ./usr/lib/libWPEWebKit-1.1.so.0
#9  0x6c2ff148 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb) 

Idem for rockchip rk3288 with wayland/cog. No backtrace of this one, but I suspect the same</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>