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 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

bors-servo commented Jan 8, 2016

📌 Commit 30abbf5 has been approved by Ms2ger

@bors-servo
Copy link
Contributor

bors-servo commented Jan 8, 2016

Testing commit 30abbf5 with merge 38e93e8...

bors-servo added 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

bors-servo commented Jan 8, 2016

💔 Test failed - travis

@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 8, 2016

@Ms2ger
Copy link
Contributor

Ms2ger commented Jan 12, 2016

@bors-servo retry

@bors-servo
Copy link
Contributor

bors-servo commented Jan 12, 2016

Testing commit 30abbf5 with merge 274c933...

bors-servo added 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

bors-servo commented Jan 12, 2016

💔 Test failed - travis

@emilio
Copy link
Member

emilio commented Jan 12, 2016

Heh, now aster/quasi_codegen is broken, great

@KiChjang
Copy link
Member

KiChjang commented Jan 12, 2016

@emilio
Copy link
Member

emilio commented Jan 12, 2016

@bors-servo
Copy link
Contributor

bors-servo commented Jan 12, 2016

Testing commit 30abbf5 with merge 43b0bf2...

bors-servo added 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

bors-servo commented Jan 12, 2016

💔 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

bors-servo commented Jan 13, 2016

Testing commit 30abbf5 with merge 7272e55...

bors-servo added 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

bors-servo commented Jan 13, 2016

☀️ Test successful - travis

@bors-servo bors-servo merged commit 30abbf5 into servo:master Jan 13, 2016
1 check passed
1 check passed
homu Test successful
Details
@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 added 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 added 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
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

5 participants
You can’t perform that action at this time.