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

Bumps solana_rbpf to v0.2.14 #18869

Merged
merged 4 commits into from
Aug 4, 2021
Merged

Conversation

Lichtso
Copy link
Contributor

@Lichtso Lichtso commented Jul 23, 2021

Problem

Summary of Changes

See RBPF release

Fixes #17520
Fixes #18683

@codecov
Copy link

codecov bot commented Jul 23, 2021

Codecov Report

Merging #18869 (5ee2435) into master (cde1461) will decrease coverage by 0.0%.
The diff coverage is 100.0%.

@@            Coverage Diff            @@
##           master   #18869     +/-   ##
=========================================
- Coverage    82.8%    82.7%   -0.1%     
=========================================
  Files         449      449             
  Lines      127997   128047     +50     
=========================================
- Hits       105993   105983     -10     
- Misses      22004    22064     +60     

@Lichtso
Copy link
Contributor Author

Lichtso commented Jul 29, 2021

@jackcmay Can you see if the feature gate looks about right?

If so you can merge.

@jackcmay
Copy link
Contributor

Sounds good, reviewing and will commit if it looks good, thanks!

@@ -83,6 +82,8 @@ pub fn create_executor(
max_call_depth: compute_budget.max_call_depth,
stack_frame_size: compute_budget.stack_frame_size,
enable_instruction_tracing: log_enabled!(Trace),
verify_mul64_imm_nonzero: !invoke_context
.is_feature_active(&stop_verify_mul64_imm_nonzero::id()), // TODO: Feature gate and then remove me
..Config::default()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the stack frame gaps disabled by default now? If so they should be featurized

Copy link
Contributor

@jackcmay jackcmay Jul 30, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the Config's instruction_meter_checkpoint_distance default or the compute meter handling change in v0.2.14?? If so should be feature gated

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Still enabled by default: enable_stack_frame_gaps: true
https://github.com/solana-labs/rbpf/blob/302de4d10888dfb76534693308f4ef8060b86fcd/src/vm.rs#L206
Should we disable it in the next release?

Copy link
Contributor Author

@Lichtso Lichtso Aug 2, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

instruction_meter_checkpoint_distance should have no influence on what the program sees, the point where programs are aborted and what error is thrown has to be the same for interpreter and JIT anyway. The option only makes the detection of that condition faster (so it affects the performance only).

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good as long as there isn't an edge case that's falls in the middle. Also, maybe check with Tao about cost model stuff to make sure this change doesn't result in a behavioral change there.

@Lichtso Lichtso merged commit 0a63f65 into solana-labs:master Aug 4, 2021
@Lichtso Lichtso deleted the rbpf/v0.2.14 branch August 4, 2021 07:50
@Lichtso Lichtso mentioned this pull request Sep 30, 2021
Lichtso added a commit to Lichtso/solana that referenced this pull request Nov 17, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Nov 17, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Nov 17, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Nov 24, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 3, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 3, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 3, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 3, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 3, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
t-nelson pushed a commit that referenced this pull request Dec 4, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in #17520.
t-nelson added a commit to t-nelson/solana that referenced this pull request Dec 13, 2021
tao-stones pushed a commit that referenced this pull request Dec 13, 2021
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 13, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
Lichtso added a commit to Lichtso/solana that referenced this pull request Dec 13, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in solana-labs#17520.
mvines pushed a commit that referenced this pull request Dec 14, 2021
* Feature gate for verify_mul64_imm_nonzero as discussed in #17520.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

BPF program consumes the entire budget on panic with jit Unnecessary BPF verifier restriction on MUL64_IMM
2 participants