Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Builder linux-rel-css Build #2929

Results:

Build successful

SourceStamp:

Projectservo/servo
Repositoryhttps://github.com/servo/servo
Branchauto
Revisionbb54f0a429de0e8b8861f8071b6cf82f73622664
Got Revisionbb54f0a429de0e8b8861f8071b6cf82f73622664
Changes1 change

BuildSlave:

servo-linux1

Reason:

The AnyBranchScheduler scheduler named 'servo-auto' triggered this build

Steps and Logfiles:

  1. git update ( 4 secs )
    1. stdio
  2. generic generic ( 0 secs )
    1. - no logs -
  3. generic_1 generic_1 ( 0 secs )
    1. - no logs -
  4. shell 'pkill -x ...' ( 0 secs )
    1. stdio
  5. compile ran build --release --with-debug-assertions ( 12 mins, 36 secs )
    1. stdio
  6. test ran test-css --release --processes 16 --always-succeed ( 13 mins, 23 secs )
    1. css-errorsummary.log
  7. shell__1 './mach filter-intermittents ...' ( 0 secs )
    1. stdio
    2. filtered-css-errorsummary.log
    3. intermittents.log
  8. compile__1 ran build-cef --release --with-debug-assertions ( 37 secs )
    1. stdio
  9. compile__2 ran build-geckolib --release ( 4 mins, 10 secs )
    1. stdio
  10. test__1 ran test-stylo --release warnings ( 5 mins, 13 secs )
    1. warnings (6)
  11. shell__2 'bash ./etc/ci/lockfile_changed.sh' ( 0 secs )
    1. stdio
  12. shell__3 'bash ./etc/ci/manifest_changed.sh' ( 0 secs )
    1. stdio

Build Properties:

NameValueSource
branch auto Build
builddir /home/servo/buildbot/slave/linux-rel-css slave
buildername linux-rel-css Builder
buildnumber 2929 Build
codebase Build
got_revision bb54f0a429de0e8b8861f8071b6cf82f73622664 Git
project servo/servo Build
repository https://github.com/servo/servo Build
revision bb54f0a429de0e8b8861f8071b6cf82f73622664 Build
scheduler servo-auto Scheduler
slavename servo-linux1 BuildSlave
warnings-count 6 WarningCountingShellCommand
workdir /home/servo/buildbot/slave/linux-rel-css slave (deprecated)

Forced Build Properties:

NameLabelValue

Responsible Users:

  1. bors-servo

Timing:

StartSun Mar 19 21:35:57 2017
EndSun Mar 19 22:12:04 2017
Elapsed36 mins, 6 secs

All Changes:

:

  1. Change #39979

    Category None
    Changed by bors-servo <lbergstrom+borsohnoyoudont@mozilla.com>
    Changed at Sun 19 Mar 2017 21:35:56
    Repository https://github.com/servo/servo
    Project servo/servo
    Branch auto
    Revision bb54f0a429de0e8b8861f8071b6cf82f73622664

    Comments

    Auto merge of #16014 - servo:style-ref, r=emilio
    
    Per-process lock for CSSOM objects
    
    <!-- Please describe your changes on the following line: -->
    
    Before this PR, every object reflected in CSSOM is in `Arc<RwLock<_>>` to enable safe (synchronized) mutable aliasing. Acquiring all these locks has significant cost during selector matching:
    
    * https://bugzilla.mozilla.org/show_bug.cgi?id=1311469
    * https://bugzilla.mozilla.org/show_bug.cgi?id=1335941
    * https://bugzilla.mozilla.org/show_bug.cgi?id=1339703
    
    This PR introduce a mechanism to protect many objects with the same `RwLock` that only needs to be acquired once.
    
    In Stylo, there is one such lock per process (in a `lazy_static`), used for everything.
    
    I non-Stylo Servo, I originally intended to have one such lock per document (for author-origin stylesheets, and one per process for user-agent and user sytlesheets since they’re shared across documents, and never mutated anyway). However I failed to have the same document-specific (or pipeline-specific) `Arc` reachable from both `Document` nodes and `LayoutThread`. Recursively following callers lead me to include this `Arc` in `UnprivilegedPipelineContent`, but that needs to be serializable. So there is a second process-wide lock.
    
    This was previously #15998, closed accidentally.
    
    ---
    <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
    - [x] `./mach build -d` does not report any errors
    - [x] `./mach test-tidy` does not report any errors
    - [ ] These changes fix #__ (github issue number if applicable).
    
    <!-- Either: -->
    - [ ] There are tests for these changes OR
    - [ ] These changes do not require tests because _____
    
    <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
    
    <!-- Reviewable:start -->
    ---
    This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16014)
    <!-- Reviewable:end -->

    Changed files

    • Cargo.lock
    • components/layout/block.rs
    • components/layout/construct.rs
    • components/layout/context.rs
    • components/layout/display_list_builder.rs
    • components/layout/generated_content.rs
    • components/layout/traversal.rs
    • components/layout_thread/lib.rs
    • components/script/dom/bindings/trace.rs
    • components/script/dom/cssconditionrule.rs
    • components/script/dom/cssfontfacerule.rs
    • components/script/dom/cssgroupingrule.rs
    • components/script/dom/cssimportrule.rs
    • components/script/dom/csskeyframerule.rs
    • components/script/dom/csskeyframesrule.rs
    • components/script/dom/cssmediarule.rs
    • components/script/dom/cssnamespacerule.rs
    • components/script/dom/cssrule.rs
    • components/script/dom/cssrulelist.rs
    • components/script/dom/cssstyledeclaration.rs
    • components/script/dom/cssstylerule.rs
    • components/script/dom/cssstylesheet.rs
    • components/script/dom/csssupportsrule.rs
    • components/script/dom/cssviewportrule.rs
    • components/script/dom/document.rs
    • components/script/dom/element.rs
    • components/script/dom/htmllinkelement.rs
    • components/script/dom/htmlmetaelement.rs
    • components/script/dom/htmlstyleelement.rs
    • components/script/dom/medialist.rs
    • components/script/layout_wrapper.rs
    • components/script/stylesheet_loader.rs
    • components/script_layout_interface/wrapper_traits.rs
    • components/style/Cargo.toml
    • components/style/animation.rs
    • components/style/attr.rs
    • components/style/context.rs
    • components/style/dom.rs
    • components/style/encoding_support.rs
    • components/style/font_face.rs
    • components/style/gecko/arc_types.rs
    • components/style/gecko/data.rs
    • components/style/gecko/global_style_data.rs
    • components/style/gecko/mod.rs
    • components/style/gecko/traversal.rs
    • components/style/gecko/wrapper.rs
    • components/style/keyframes.rs
    • components/style/lib.rs
    • components/style/matching.rs
    • components/style/owning_handle.rs
    • components/style/properties/properties.mako.rs
    • components/style/rule_tree/mod.rs
    • components/style/servo/mod.rs
    • components/style/shared_lock.rs
    • components/style/stylesheets.rs
    • components/style/stylist.rs
    • components/style/traversal.rs
    • components/style/viewport.rs
    • ports/geckolib/Cargo.toml
    • ports/geckolib/glue.rs
    • ports/geckolib/lib.rs
    • ports/geckolib/stylesheet_loader.rs
    • tests/unit/style/Cargo.toml
    • tests/unit/style/keyframes.rs
    • tests/unit/style/lib.rs
    • tests/unit/style/media_queries.rs
    • tests/unit/style/owning_handle.rs
    • tests/unit/style/rule_tree/bench.rs
    • tests/unit/style/stylesheets.rs
    • tests/unit/style/stylist.rs
    • tests/unit/style/viewport.rs
    • tests/unit/stylo/lib.rs
    • tests/unit/stylo/servo_function_signatures.rs