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

Refactor - Remove generic parameter Verifier from Executable #500

Merged

Conversation

Lichtso
Copy link

@Lichtso Lichtso commented Aug 21, 2023

In the monorepo we can now cache that a program was verified with the current vm::Config and skip verification when re-loading these programs. But that requires an unsafe transmutation to circumvent the protection here in RBPF against precisely this usage pattern. See solana-labs/solana#32722 (comment).

Thus, we will just remove the type safety here as the check is effectively done at runtime now, in the loaded programs cache.

@Lichtso Lichtso force-pushed the refactor/remove_generic_parameter_verifier_from_executable branch from ed1c912 to 2e653fe Compare August 21, 2023 15:02
@codecov-commenter
Copy link

codecov-commenter commented Aug 21, 2023

Codecov Report

Merging #500 (8f4250d) into main (0c64b48) will decrease coverage by 0.02%.
Report is 1 commits behind head on main.
The diff coverage is 96.55%.

@@            Coverage Diff             @@
##             main     #500      +/-   ##
==========================================
- Coverage   89.55%   89.53%   -0.02%     
==========================================
  Files          23       23              
  Lines       10119    10093      -26     
==========================================
- Hits         9062     9037      -25     
+ Misses       1057     1056       -1     
Files Changed Coverage Δ
src/disassembler.rs 93.36% <0.00%> (ø)
src/verifier.rs 97.83% <ø> (+0.33%) ⬆️
src/assembler.rs 98.80% <100.00%> (-0.03%) ⬇️
src/elf.rs 87.38% <100.00%> (-0.04%) ⬇️
src/interpreter.rs 97.67% <100.00%> (ø)
src/jit.rs 91.68% <100.00%> (-0.06%) ⬇️
src/static_analysis.rs 65.82% <100.00%> (ø)
src/vm.rs 73.36% <100.00%> (ø)
src/x86.rs 84.33% <100.00%> (ø)
test_utils/src/lib.rs 96.15% <100.00%> (ø)

@Lichtso Lichtso force-pushed the refactor/remove_generic_parameter_verifier_from_executable branch from 2e653fe to 8f4250d Compare August 21, 2023 15:08
@Lichtso Lichtso force-pushed the refactor/remove_generic_parameter_verifier_from_executable branch from 8f4250d to ca4fe7d Compare August 21, 2023 15:28
@Lichtso Lichtso merged commit 6ae9e4b into main Aug 22, 2023
12 checks passed
@Lichtso Lichtso deleted the refactor/remove_generic_parameter_verifier_from_executable branch August 22, 2023 11:39
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.

3 participants