Skip to content
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

Linux: Don't pass uninitialised memory as pointers to libc::connect() #27

Merged
merged 1 commit into from
Jan 13, 2016

Conversation

antrik
Copy link
Contributor

@antrik antrik commented Jan 8, 2016

I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.

Either way, creating explicit NULL pointers seems way more correct.

This fixes the other four testsuite failures, as well as servo -M

I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.

Either way, creating explicit NULL pointers seems way more correct.

This fixes the other four testsuite failures, as well as servo -M
@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 8, 2016

What testsuite failures are you referring to?

@antrik
Copy link
Contributor Author

antrik commented Jan 8, 2016

All the tests using IpcOneShotServer are failing on my system without this fix -- including platform::test::server, platform::test::cross_process, platform::test::cross_process_sender_transfer, and test::cross_process_embedded_senders. (And servo -m accordingly also panics on IpcOneShotServer.)

@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 8, 2016

Would be nice if we could test this in automation. This looks correct from the manpage, though.

@bors-servo r+

@bors-servo
Copy link
Contributor

📌 Commit 30abbf5 has been approved by Ms2ger

@bors-servo
Copy link
Contributor

⌛ Testing commit 30abbf5 with merge 38e93e8...

bors-servo pushed a commit that referenced this pull request Jan 8, 2016
Linux: Don't pass uninitialised memory as pointers to libc::connect()

I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.

Either way, creating explicit NULL pointers seems way more correct.

This fixes the other four testsuite failures, as well as servo -M
@bors-servo
Copy link
Contributor

💔 Test failed - travis

@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 8, 2016

And that's rust-lang/rust#30713

@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 12, 2016

@bors-servo retry

@bors-servo
Copy link
Contributor

⌛ Testing commit 30abbf5 with merge 274c933...

bors-servo pushed a commit that referenced this pull request Jan 12, 2016
Linux: Don't pass uninitialised memory as pointers to libc::connect()

I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.

Either way, creating explicit NULL pointers seems way more correct.

This fixes the other four testsuite failures, as well as servo -M
@bors-servo
Copy link
Contributor

💔 Test failed - travis

@emilio
Copy link
Member

emilio commented Jan 12, 2016

Heh, now aster/quasi_codegen is broken, great

@KiChjang
Copy link

@emilio
Copy link
Member

emilio commented Jan 12, 2016

@bors-servo: retry (serde-deprecated/quasi#29)

@bors-servo
Copy link
Contributor

⌛ Testing commit 30abbf5 with merge 43b0bf2...

bors-servo pushed a commit that referenced this pull request Jan 12, 2016
Linux: Don't pass uninitialised memory as pointers to libc::connect()

I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.

Either way, creating explicit NULL pointers seems way more correct.

This fixes the other four testsuite failures, as well as servo -M
@bors-servo
Copy link
Contributor

💔 Test failed - travis

@emilio
Copy link
Member

emilio commented Jan 12, 2016

Dang it, not published yet

@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 13, 2016

@bors-servo retry

@bors-servo
Copy link
Contributor

⌛ Testing commit 30abbf5 with merge 7272e55...

bors-servo pushed a commit that referenced this pull request Jan 13, 2016
Linux: Don't pass uninitialised memory as pointers to libc::connect()

I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.

Either way, creating explicit NULL pointers seems way more correct.

This fixes the other four testsuite failures, as well as servo -M
@bors-servo
Copy link
Contributor

☀️ Test successful - travis

@bors-servo bors-servo merged commit 30abbf5 into servo:master Jan 13, 2016
@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 13, 2016

\o/

antrik added a commit to antrik/servo that referenced this pull request Jan 13, 2016
This pulls in servo/ipc-channel#25 and
servo/ipc-channel#27, thus fixing fallout from
the multiprocess split, and making Servo work on my system again.

(It also pulls in servo/ipc-channel#12 -- I
guess that's fine?)
bors-servo pushed a commit to servo/servo that referenced this pull request Jan 14, 2016
cargo-update ipc-channel to get important fixes

This pulls in servo/ipc-channel#25 and
servo/ipc-channel#27, thus fixing fallout from
the multiprocess split, and making Servo work on my system again.

(It also pulls in servo/ipc-channel#12 -- I
guess that's fine?)

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9299)
<!-- Reviewable:end -->
bors-servo pushed a commit to servo/servo that referenced this pull request Jan 14, 2016
cargo-update ipc-channel to get important fixes

This pulls in servo/ipc-channel#25 and
servo/ipc-channel#27, thus fixing fallout from
the multiprocess split, and making Servo work on my system again.

(It also pulls in servo/ipc-channel#12 -- I
guess that's fine?)

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9299)
<!-- Reviewable:end -->
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Oct 1, 2019
…(from antrik:update-ipc_channel); r=pcwalton

This pulls in servo/ipc-channel#25 and
servo/ipc-channel#27, thus fixing fallout from
the multiprocess split, and making Servo work on my system again.

(It also pulls in servo/ipc-channel#12 -- I
guess that's fine?)

Source-Repo: https://github.com/servo/servo
Source-Revision: 42372dbdf112c1c2967c4487401b28e7305c2993

UltraBlame original commit: d16cecf007bc7760538afc4ec593b1d6580648f2
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Oct 1, 2019
…(from antrik:update-ipc_channel); r=pcwalton

This pulls in servo/ipc-channel#25 and
servo/ipc-channel#27, thus fixing fallout from
the multiprocess split, and making Servo work on my system again.

(It also pulls in servo/ipc-channel#12 -- I
guess that's fine?)

Source-Repo: https://github.com/servo/servo
Source-Revision: 42372dbdf112c1c2967c4487401b28e7305c2993

UltraBlame original commit: d16cecf007bc7760538afc4ec593b1d6580648f2
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Oct 1, 2019
…(from antrik:update-ipc_channel); r=pcwalton

This pulls in servo/ipc-channel#25 and
servo/ipc-channel#27, thus fixing fallout from
the multiprocess split, and making Servo work on my system again.

(It also pulls in servo/ipc-channel#12 -- I
guess that's fine?)

Source-Repo: https://github.com/servo/servo
Source-Revision: 42372dbdf112c1c2967c4487401b28e7305c2993

UltraBlame original commit: d16cecf007bc7760538afc4ec593b1d6580648f2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants