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

compositing: Split Servo up into multiple sandboxed processes. #8599

Merged
merged 1 commit into from Nov 19, 2015

Conversation

@jdm
Copy link
Member

jdm commented Nov 19, 2015

Multiprocess mode is enabled with the -M switch, and sandboxing is
enabled with the -S switch.

Rebase of #6884.

Review on Reviewable

@highfive
Copy link

highfive commented Nov 19, 2015

warning Warning warning

  • These commits modify unsafe code. Please review it carefully!
  • These commits modify layout code, but no reftests are modified. Please consider adding a reftest!
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo: r=metajack

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

📌 Commit 8763475 has been approved by metajack

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

Testing commit 8763475 with merge 78658c0...

bors-servo added a commit that referenced this pull request Nov 19, 2015
compositing: Split Servo up into multiple sandboxed processes.

Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.

Rebase of #6884.
@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

💔 Test failed - gonk

@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

   Compiling gaol v0.0.1 (https://github.com/pcwalton/gaol#b309234f)
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/seccomp.rs:37:22: 37:36 error: unresolved name `AUDIT_ARCH_ARM` [E0425]
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/seccomp.rs:37 const ARCH_NR: u32 = AUDIT_ARCH_ARM;
                                                                                                                ^~~~~~~~~~~~~~
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/seccomp.rs:37:22: 37:36 help: run `rustc --explain E0425` to see a detailed explanation
error: aborting due to previous error
@pcwalton
Copy link
Contributor

pcwalton commented Nov 19, 2015

@jdm Pushed a gaol update to address that.

@jdm jdm force-pushed the jdm:e10s-redux branch from 8763475 to 3327234 Nov 19, 2015
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo: r=metajack

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

📌 Commit 3327234 has been approved by metajack

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

Testing commit 3327234 with merge 24dbfdb...

bors-servo added a commit that referenced this pull request Nov 19, 2015
compositing: Split Servo up into multiple sandboxed processes.

Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.

Rebase of #6884.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8599)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

💔 Test failed - gonk

@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:259:41: 259:71 error: mismatched types:
 expected `u32`,
    found `u64`
(expected u32,
    found u64) [E0308]
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:259                                         mem::size_of::<pid_t>() as u64) ==
                                                                                                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:257:21: 260:77 note: in this expansion of assert! (defined in <std macros>)
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:259:41: 259:71 help: run `rustc --explain E0308` to see a detailed explanation
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:260:45: 260:75 error: mismatched types:
 expected `i32`,
    found `i64`
(expected i32,
    found i64) [E0308]
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:260                                             mem::size_of::<pid_t>() as i64);
                                                                                                                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:257:21: 260:77 note: in this expansion of assert! (defined in <std macros>)
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:260:45: 260:75 help: run `rustc --explain E0308` to see a detailed explanation
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:273:28: 273:58 error: mismatched types:
 expected `u32`,
    found `u64`
(expected u32,
    found u64) [E0308]
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:273                            mem::size_of::<pid_t>() as u64) == mem::size_of::<pid_t>() as i64);
                                                                                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:271:9: 273:95 note: in this expansion of assert! (defined in <std macros>)
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:273:28: 273:58 help: run `rustc --explain E0308` to see a detailed explanation
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:273:63: 273:93 error: mismatched types:
 expected `i32`,
    found `i64`
(expected i32,
    found i64) [E0308]
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:273                            mem::size_of::<pid_t>() as u64) == mem::size_of::<pid_t>() as i64);
                                                                                                                                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:271:9: 273:95 note: in this expansion of assert! (defined in <std macros>)
/home/servo/.cargo/git/checkouts/gaol-2f5ad236210c8e99/master/platform/linux/namespace.rs:273:63: 273:93 help: run `rustc --explain E0308` to see a detailed explanation
error: aborting due to 4 previous errors
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

I'm super confused about the build errors on non-linux platforms, since I can build it without issue on OS X (and the code being referenced in some errors does not appear to exist locally??)

@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

Oh, it exists after rebasing. Delightful!

@jdm jdm force-pushed the jdm:e10s-redux branch from 3327234 to d3dd4f1 Nov 19, 2015
bors-servo added a commit that referenced this pull request Nov 19, 2015
compositing: Split Servo up into multiple sandboxed processes.

Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.

Rebase of #6884.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8599)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

💔 Test failed - gonk

@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

CRASH [expected OK] /dom/nodes/Document-createElement-namespace.html
  │ 
  │ thread 'Constellation' panicked at 'called `Result::unwrap()` on an `Err` value: ()', src/libcore/result.rs:736
  │ stack backtrace:
  │    1:     0x7f03dc3420a0 - <unknown>
  │    2:     0x7f03dc344de5 - <unknown>
  │    3:     0x7f03dc344831 - <unknown>
  │    4:     0x7f03dc32e4e3 - <unknown>
  │    5:     0x7f03dc32eb98 - <unknown>
  │    6:     0x7f03dc341771 - <unknown>
  │    7:     0x7f03dc37279f - <unknown>
  │    8:     0x7f03dad97447 - <unknown>
  │    9:     0x7f03dad28be6 - <unknown>
  │   10:     0x7f03dad11ea7 - <unknown>
  │   11:     0x7f03dad112a4 - <unknown>
  │   12:     0x7f03dc3415d8 - <unknown>
  │   13:     0x7f03dc33dbab - <unknown>
  │   14:     0x7f03dad11434 - <unknown>
  │   15:     0x7f03dc3438d3 - <unknown>
  │   16:     0x7f03d8359181 - <unknown>
  │   17:     0x7f03d8b7347c - <unknown>
  │   18:                0x0 - <unknown>
  │ thread 'Constellation' panicked at 'assertion failed: libc::close(self.fd) == 0', /home/servo/.cargo/git/checkouts/ipc-channel-d95a23d1f1577bfc/master/platform/linux/mod.rs:101
  │ stack backtrace:
  │    1:     0x7f03dc3420a0 - <unknown>
  │    2:     0x7f03dc344de5 - <unknown>
  │    3:     0x7f03dc344831 - <unknown>
  │    4:     0x7f03dc32e408 - <unknown>
  │    5:     0x7f03dc2eabff - <unknown>
  │    6:     0x7f03dc2e4235 - <unknown>
  │    7:     0x7f03dad4d62b - <unknown>
  │    8:     0x7f03dad975b6 - <unknown>
  │    9:     0x7f03dad28be6 - <unknown>
  │   10:     0x7f03dad11ea7 - <unknown>
  │   11:     0x7f03dad112a4 - <unknown>
  │   12:     0x7f03dc3415d8 - <unknown>
  │   13:     0x7f03dc33dbab - <unknown>
  │   14:     0x7f03dad11434 - <unknown>
  │   15:     0x7f03dc3438d3 - <unknown>
  │   16:     0x7f03d8359181 - <unknown>
  │   17:     0x7f03d8b7347c - <unknown>
  │   18:                0x0 - <unknown>
  └ thread panicked while panicking. aborting.
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

I'm used to seeing that first panic as a result of ipc::channel().unwrap().

Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.
@jdm jdm force-pushed the jdm:e10s-redux branch from d3dd4f1 to 1c13081 Nov 19, 2015
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

Trying commit 1c13081 with merge 0630c08...

bors-servo added a commit that referenced this pull request Nov 19, 2015
compositing: Split Servo up into multiple sandboxed processes.

Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.

Rebase of #6884.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8599)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo: r=metajack

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

📌 Commit 1c13081 has been approved by metajack

@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

Testing commit 1c13081 with merge 8b39b9a...

bors-servo added a commit that referenced this pull request Nov 19, 2015
compositing: Split Servo up into multiple sandboxed processes.

Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.

Rebase of #6884.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8599)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Nov 19, 2015

@bors-servo bors-servo merged commit 1c13081 into servo:master Nov 19, 2015
2 checks passed
2 checks passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
homu Test successful
Details
@Ms2ger Ms2ger deleted the jdm:e10s-redux branch Nov 20, 2015
@l0kod l0kod mentioned this pull request Nov 28, 2015
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

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