Status: New
Owner: ----

New issue 1578 by [email protected]: JSON.stringify sometimes segfaults on ARM
http://code.google.com/p/v8/issues/detail?id=1578

I am trying to run Node.js on an at91SAM9g45 based embedded linux system. I have been getting intermittent segfaults while testing. After much digging it seems to happen mainly while stringifying larger objects (~25 KB), but I have seen it happen on smaller objects too. I have been using a v8 dynamic library, and a very simple program that runs a script passed through the command line to track this down. When I run a script that stringifys a large object 100 times both node and my custom program segfault about 20% of the time. For comparison I also use a modified version of json2.js to stringify, runtime is much slower with this method, but I have yet to see a segfault.

I have attached the source for my test program and the script I was using.

Here is what the output from the script looks like:


V8 test large object JSON native
Command terminated by signal 11
real    0m 0.25s
user    0m 0.22s
sys     0m 0.04s

node test large object JSON native
real    0m 3.41s
user    0m 3.29s
sys     0m 0.09s

V8 test small object JSON native
real    0m 0.20s
user    0m 0.20s
sys     0m 0.01s

node test small object JSON native
real    0m 1.05s
user    0m 0.92s
sys     0m 0.13s

V8 test large object JSON script
real    0m 9.93s
user    0m 9.71s
sys     0m 0.12s

node test large object JSON script
real    0m 30.94s
user    0m 30.48s
sys     0m 0.15s

V8 test small object JSON script
real    0m 0.42s
user    0m 0.37s
sys     0m 0.06s

node test small object JSON script
real    0m 1.45s
user    0m 1.35s
sys     0m 0.08s

RUNS: 163
FAILS_NATIVE: 34 20%
NODE_FAILS_NATIVE: 27 16%
FAILS_SMALL_NATIVE: 3 1%
NODE_FAILS_SMALL_NATIVE: 2 1%
FAILS_SCRIPT: 0 0%
NODE_FAILS_SCRIPT: 0 0%
FAILS_SMALL_SCRIPT: 0 0%
NODE_FAILS_SMALL_SCRIPT: 0 0%


Attachments:
        testrun.sh  31.6 KB
        v8test.cc  864 bytes

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to