-
Notifications
You must be signed in to change notification settings - Fork 29.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Certain values of --max_old_space_size cause segmentation fault #648
Comments
I can confirm this also happens on OSX 10.9.5, running with 4GB of RAM. It works fine though at levels above 4GB (unless they follow that pattern) so I'm fairly sure this isn't the case. Looks like its a V8 bug though, if I could throw a guess. Edit: oop. Could a 1.7GB limit on 64 bit machines have anything to do with it? |
I looked at this briefly earlier today. I'm not 100% sure but it might be caused by something trivial like signed/unsigned overflow. I'll take a closer look. |
It was indeed integer math overflow: the result of 4096 * MB doesn't fit in an int. Proposed fix: https://codereview.chromium.org/890563003/ |
Nice, thanks :) |
Looks like the fix landed upstream. Should land down here when the next v8 update gets pulled, I think. |
There is a pattern on values that causes segfault:
2^n + 0...3
wheren >= 12
e.g: 4096,4097,4098,4099,8192,8193,8194,8195 etc...
The rest values work fine.
Issue present on v0.11.15, v1.0.4 but works fine on v0.10.36.
It's funny because the first value I tried were 4096, 8192 and I would expect most to do the same.
Some info from gdb:
The text was updated successfully, but these errors were encountered: