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 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 highfive added the S-awaiting-review There is new code that needs to be reviewed. label Nov 19, 2015
@highfive
Copy link

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

📌 Commit 8763475 has been approved by metajack

@highfive highfive removed the S-awaiting-review There is new code that needs to be reviewed. label Nov 19, 2015
@bors-servo
Copy link
Contributor

⌛ Testing commit 8763475 with merge 78658c0...

@highfive highfive added the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Nov 19, 2015
bors-servo pushed 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

💔 Test failed - gonk

@highfive highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Nov 19, 2015
@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

@jdm Pushed a gaol update to address that.

@highfive highfive added S-awaiting-review There is new code that needs to be reviewed. and removed S-tests-failed The changes caused existing tests to fail. labels Nov 19, 2015
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo: r=metajack

@bors-servo
Copy link
Contributor

📌 Commit 3327234 has been approved by metajack

@highfive highfive added S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. and removed S-awaiting-review There is new code that needs to be reviewed. labels Nov 19, 2015
@bors-servo
Copy link
Contributor

⌛ Testing commit 3327234 with merge 24dbfdb...

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

💔 Test failed - gonk

@highfive highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Nov 19, 2015
@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!

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

💔 Test failed - gonk

@highfive highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Nov 19, 2015
@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().

@jdm jdm added S-blocked-on-external Something, somewhere else, needs to happen before this PR can be merged. and removed S-awaiting-review There is new code that needs to be reviewed. labels Nov 19, 2015
Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.
@highfive highfive added S-awaiting-review There is new code that needs to be reviewed. and removed S-tests-failed The changes caused existing tests to fail. labels Nov 19, 2015
@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo: try

@bors-servo
Copy link
Contributor

⌛ Trying commit 1c13081 with merge 0630c08...

bors-servo pushed 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 -->
@jdm jdm removed the S-blocked-on-external Something, somewhere else, needs to happen before this PR can be merged. label Nov 19, 2015
@bors-servo
Copy link
Contributor

☀️ Test successful - android, gonk, linux-dev, linux-rel, mac-dev-ref-unit, mac-rel-css, mac-rel-wpt

@jdm
Copy link
Member Author

jdm commented Nov 19, 2015

@bors-servo: r=metajack

@bors-servo
Copy link
Contributor

📌 Commit 1c13081 has been approved by metajack

@highfive highfive removed the S-awaiting-review There is new code that needs to be reviewed. label Nov 19, 2015
@bors-servo
Copy link
Contributor

⌛ Testing commit 1c13081 with merge 8b39b9a...

@highfive highfive added the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Nov 19, 2015
bors-servo pushed 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

☀️ Test successful - android, gonk, linux-dev, linux-rel, mac-dev-ref-unit, mac-rel-css, mac-rel-wpt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants