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

Do not trace pending parsers #26955

Merged
merged 1 commit into from Jun 18, 2020
Merged

Do not trace pending parsers #26955

merged 1 commit into from Jun 18, 2020

Conversation

@gterzian
Copy link
Member

gterzian commented Jun 17, 2020

FIX #26857


  • ./mach build -d does not report any errors
  • ./mach test-tidy does not report any errors
  • These changes fix #___ (GitHub issue number if applicable)
  • There are tests for these changes OR
  • These changes do not require tests because ___
@highfive
Copy link

highfive commented Jun 17, 2020

Heads up! This PR modifies the following files:

  • @asajeffrey: components/script/script_thread.rs, components/script/dom/servoparser/mod.rs, components/script/dom/bindings/trace.rs
  • @KiChjang: components/script/script_thread.rs, components/script/dom/servoparser/mod.rs, components/script/dom/bindings/trace.rs
@highfive
Copy link

highfive commented Jun 17, 2020

warning Warning warning

  • These commits modify script code, but no tests are modified. Please consider adding a test!
@gterzian
Copy link
Member Author

gterzian commented Jun 17, 2020

So this actually just restores the validity of the comment at https://github.com/servo/servo/pull/26955/files#diff-1879ac6bd5d567e2aa43529d33474677R501

// We borrow the incomplete parser contexts mutably during parsing,
// which is fine except that parsing can trigger evaluation,
// which can trigger GC, and so we can end up tracing the script
// thread during parsing. For this reason, we don't trace the
// incomplete parser contexts during GC.
@jdm
jdm approved these changes Jun 17, 2020
Copy link
Member

jdm left a comment

I didn't consider this as a possible solution, but it makes a lot of sense. Good find!

@jdm
Copy link
Member

jdm commented Jun 17, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Jun 17, 2020

📌 Commit 558a55c has been approved by jdm

@highfive highfive assigned jdm and unassigned nox Jun 17, 2020
@gterzian gterzian changed the title do not trace pending parsers Do not trace pending parsers Jun 17, 2020
bors-servo added a commit that referenced this pull request Jun 18, 2020
Do not trace pending parsers

<!-- Please describe your changes on the following line: -->

FIX #26857

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./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 ___

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Jun 18, 2020

Testing commit 558a55c with merge b07b3b8...

@bors-servo
Copy link
Contributor

bors-servo commented Jun 18, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Jun 18, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Jun 18, 2020

Testing commit 558a55c with merge a140088...

bors-servo added a commit that referenced this pull request Jun 18, 2020
Do not trace pending parsers

<!-- Please describe your changes on the following line: -->

FIX #26857

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./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 ___

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Jun 18, 2020

💔 Test failed - status-taskcluster

@gterzian
Copy link
Member Author

gterzian commented Jun 18, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Jun 18, 2020

Testing commit 558a55c with merge 429bb9e...

@bors-servo
Copy link
Contributor

bors-servo commented Jun 18, 2020

☀️ Test successful - status-taskcluster
Approved by: jdm
Pushing 429bb9e to master...

@bors-servo bors-servo merged commit 429bb9e into servo:master Jun 18, 2020
2 checks passed
2 checks passed
Community-TC (pull_request) TaskGroup: success
Details
homu Test successful
Details
@gterzian gterzian deleted the gterzian:fix_parser_borrow branch Jun 18, 2020
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.

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