-
-
Notifications
You must be signed in to change notification settings - Fork 33.7k
deps: backport 0d01728 from v8's upstream #2912
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
deps: backport 0d01728 from v8's upstream #2912
Conversation
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: nodejs#2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{nodejs#30771}
Fix: nodejs#2791
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The kStartOffset property is inherited from JSObject, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep.
|
I don't feel qualified to review this, but Rubberstamp-LGTM if others sign off. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So if I read this right, it basically iterates over the arraybuffer's properties skipping the kBitFieldSlot and kBitFieldOffset fields? Seems awfully implicit. (EDIT: And evidently it results in redundancy.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bnoordhuis yeah, this is what v8 team advised me to do...
|
LGTM although it's not the approach I would have taken. The test is clever though. |
|
@bnoordhuis I'd rather move the backing store pointer down, but idk |
|
Change looks good, but I'm not qualified to fully sign off. |
|
Looks like CI is a bit borked? cc @rvagg |
|
@indutny CI also seems more or less fine. Maybe wait for armv7. |
|
@Fishrock123 please land the thing! |
|
Landed in 2b8a06b, thank you! |
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: #2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{#30771}
Fix: #2791
PR-URL: #2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: nodejs#2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{nodejs#30771}
Fix: nodejs#2791
PR-URL: nodejs#2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Needed for nodejs/node#2912. See #238 and #239.
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: #2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{#30771}
Fix: #2791
PR-URL: #2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: nodejs#2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{nodejs#30771}
Fix: nodejs#2791
PR-URL: nodejs#2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: nodejs#2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{nodejs#30771}
Fix: nodejs#2791
PR-URL: nodejs#2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: #2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{#30771}
Fix: #2791
PR-URL: #2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: #2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{#30771}
Fix: #2791
PR-URL: #2912
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: nodejs#2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{nodejs#30771}
Ref: nodejs#2791
Ref: nodejs#2912
PR-URL: nodejs#3351
Reviewed-By: indutny - Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
[objects] do not visit ArrayBuffer's backing store
ArrayBuffer's backing store is a pointer to external heap, and
can't be treated as a heap object. Doing so will result in
crashes, when the backing store is unaligned.
See: #2791
BUG=chromium:530531
R=mlippautz@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1327403002
Cr-Commit-Position: refs/heads/master@{#30771}
Ref: #2791
Ref: #2912
PR-URL: #3351
Reviewed-By: indutny - Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
|
landed in lts-v4.x-staging as 94972d5 |
Original commit message:
Fix: #2791
cc @Fishrock123 @trevnorris @nodejs/v8