8000 rust: update nightly to 2025-02 by bradjc · Pull Request #4348 · tock/tock · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

rust: update nightly to 2025-02 #4348

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

Merged
merged 8 commits into from
Mar 13, 2025
Merged

rust: update nightly to 2025-02 #4348

merged 8 commits into from
Mar 13, 2025

Conversation

bradjc
Copy link
Contributor
@bradjc bradjc commented Feb 20, 2025

Pull Request Overview

Update the nightly version. It's been three months.

@JADarius can you take a look at the CI build errors?

Testing Strategy

Travis

TODO or Help Wanted

Many more clippy warnings to fix.

Documentation Updated

  • Updated the relevant files in /docs, or no updates are required.

Formatting

  • Ran make prepush.

@github-actions github-actions bot added kernel tock-libraries This affects libraries supported by the Tock project HIL This affects a Tock HIL interface. WG-Network In the purview of the Network working group. labels Feb 20, 2025
@bradjc bradjc force-pushed the nightly-2025-02-19 branch from b22deed to 28c1fc7 Compare February 20, 2025 05:15
@github-actions github-actions bot added sam4l Change pertains to the SAM4L MCU. nrf Change pertains to the nRF5x family of MCUs. risc-v RISC-V architecture WG-OpenTitan In the purview of the OpenTitan working group. labels Feb 20, 2025
@JADarius JADarius mentioned this pull request Feb 24, 2025
1 task
@bradjc
< 8000 div class="timeline-comment-actions flex-shrink-0 d-flex flex-items-center">
Copy link
Contributor Author
bradjc commented Feb 24, 2025

Even without the psoc6 errors, we get an error with earlgrey:

error: queries overflow the depth limit!
  |
  = help: consider increasing the recursion limit by adding a `#![recursion_limit = "512"]` attribute to your crate (`earlgrey`)
  = note: query depth increased by 258 when simplifying constant for the type system `registers::rv_plic_regs::_`

error: could not compile `earlgrey` (lib) due to 1 previous error
make: *** [check] Error 101

It seems like maybe this is caused where there are "too many" registers defined in the registers struct macro.

@lschuermann @hudson-ayers Do you know what changed in Rust? Are we supposed to fix something about the registers macro, have smaller registers mapping, or follow the guidance of the compiler error? Is there a reason we would do this piecemeal (ie set it for individual crates) versus somehow change the setting for the entire workspace?

It would be nice if Rust provided some sort of pointer to info about this change if something that wasn't an error before suddenly becomes an error.

@lschuermann
Copy link
Member

Well, this used to be an issue before, and it just seems that some compiler internals have either changed the default recursion limits, or how many iterations the compiler spends / "thinks it spends" trying to expand this macro.

Hence, I think this is effectively just this: #2941 (comment)

tl;dr: we have a small PoC on how to make this better, but we're still fundamentally recursive and wouldn't solve this issue for good. To me it still seems most promising to pursue #4001, which will completely supersede and deprecate this infrastructure, and not suffer from the same macro-rules restrictions and issues.

@ppannuto ppannuto added the last-call Final review period for a pull request. label Mar 4, 2025
@alevy alevy added this pull request to the merge queue Mar 13, 2025
Merged via the queue into master with commit 1eccd0b Mar 13, 2025
21 checks passed
@alevy alevy deleted the nightly-2025-02-19 branch March 13, 2025 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
HIL This affects a Tock HIL interface. kernel last-call Final review period for a pull request. nrf Change pertains to the nRF5x family of MCUs. risc-v RISC-V architecture sam4l Change pertains to the SAM4L MCU. tock-libraries This affects libraries supported by the Tock project WG-Network In the purview of the Network working group. WG-OpenTitan In the purview of the OpenTitan working group.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants
0