Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
ab5c0d6
revive: bump polkavm
lrubasze Nov 21, 2025
56d2af4
revive: align to updated polkavm
lrubasze Nov 21, 2025
53ec86b
revive: disable polkavm logging
lrubasze Nov 21, 2025
2deab42
Update from github-actions[bot] running command 'prdoc --audience run…
github-actions[bot] Nov 21, 2025
fa32f59
revive: use instructions_with_isa
lrubasze Nov 21, 2025
f1e9b3a
revive: updates call_builder
lrubasze Nov 21, 2025
42c84c1
bump polkavm globally
lrubasze Nov 24, 2025
b6e3343
revive: Add pvm_logs flag to DebugSettings
lrubasze Nov 24, 2025
cf29625
Update from github-actions[bot] running command 'prdoc --audience run…
github-actions[bot] Nov 24, 2025
8d84b6a
fix prdoc
lrubasze Nov 24, 2025
370a3df
Merge remote-tracking branch 'origin/master' into lrubasze/disable-po…
lrubasze Nov 24, 2025
3d02063
pallet-revive: Use PVM Revive instructions
lrubasze Nov 24, 2025
b1fdac9
pallet-revive: refactor sbrk test
lrubasze Nov 24, 2025
a8fe524
pallet-revive-fixtures: cleanup
lrubasze Nov 24, 2025
8b987c6
pallet-revive-fixtures: cleanup 2
lrubasze Nov 24, 2025
e2acf38
fix prdoc
lrubasze Nov 25, 2025
23480ed
Merge remote-tracking branch 'origin/master' into lrubasze/disable-po…
lrubasze Nov 25, 2025
4b2689e
pallet-revive-fixtures: cleanup after merging master
lrubasze Nov 25, 2025
d3d1104
pallet-revive-fixtures: clippy
lrubasze Nov 25, 2025
c1f3190
fix build
lrubasze Nov 25, 2025
be83ba2
fix prdoc
lrubasze Nov 25, 2025
fd2c14e
fix prdoc
lrubasze Nov 25, 2025
50ea4d2
fix prdoc
lrubasze Nov 25, 2025
4a4bf41
Merge branch 'master' into lrubasze/disable-polkavm-logging
lrubasze Nov 26, 2025
519114e
pallet-revive-fixtures: bump polkavm in _Cargo.toml template
lrubasze Nov 26, 2025
c0bd94e
pallet-revive: add some comment
lrubasze Nov 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
161 changes: 42 additions & 119 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -1173,9 +1173,9 @@ polkadot-subsystem-bench = { path = "polkadot/node/subsystem-bench" }
polkadot-test-client = { path = "polkadot/node/test/client" }
polkadot-test-runtime = { path = "polkadot/runtime/test-runtime" }
polkadot-test-service = { path = "polkadot/node/test/service" }
polkavm = { version = "0.26.0", default-features = false }
polkavm-derive = "0.26.0"
polkavm-linker = "0.26.0"
polkavm = { version = "0.30.0", default-features = false }
polkavm-derive = "0.30.0"
polkavm-linker = "0.30.0"
portpicker = { version = "0.1.1" }
pretty_assertions = { version = "1.3.0" }
primitive-types = { version = "0.13.1", default-features = false, features = ["num-traits"] }
Expand Down
28 changes: 28 additions & 0 deletions prdoc/pr_10385.prdoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
title: Disable polkavm logging in `pallet-revive`
doc:
- audience: Runtime Dev
description: |-
This PR adds configurable control over PolkaVM logging in `pallet-revive` to address performance degradation (details: https://github.com/paritytech/polkadot-sdk/issues/8760#issuecomment-3499548774)

- Upgrades PolkaVM to v0.30.0 which provides `set_imperfect_logger_filtering_workaround()`
- Adds `pvm_logs` flag to `DebugSettings` to control PolkaVM interpreter logging
- Disables PolkaVM logs by default (when `pvm_logs=false`), enabling them only when explicitly configured
- Fixes performance issue where excessive PolkaVM logging was impacting block proposal times

The logging can be re-enabled via debug settings when needed for troubleshooting.

Additionally:
- PolkaVM has been bumped globally across whole codebase.
crates:
- name: pallet-revive
bump: major
- name: pallet-revive-fixtures
bump: minor
- name: pallet-revive-uapi
bump: patch
- name: substrate-wasm-builder
bump: minor
- name: sc-executor-common
bump: major
- name: sc-executor-polkavm
bump: minor
4 changes: 2 additions & 2 deletions substrate/frame/revive/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ num-bigint = { workspace = true }
num-integer = { workspace = true }
num-traits = { workspace = true }
paste = { workspace = true }
polkavm = { version = "0.29.1", default-features = false }
polkavm-common = { version = "0.29.0", default-features = false, features = ["alloc"] }
polkavm = { version = "0.30.0", default-features = false }
polkavm-common = { version = "0.30.0", default-features = false, features = ["alloc"] }
rand = { workspace = true, optional = true }
rand_pcg = { workspace = true, optional = true }
revm = { workspace = true }
Expand Down
13 changes: 12 additions & 1 deletion substrate/frame/revive/fixtures/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,21 @@ workspace = true
[dependencies]
alloy-core = { workspace = true, default-features = true, features = ["sol-types"], optional = true }
anyhow = { workspace = true, default-features = true, optional = true }
cargo_metadata = { workspace = true, optional = true }
hex = { workspace = true, features = ["alloc"], optional = true }
pallet-revive-uapi = { workspace = true }
polkavm-linker = { version = "0.30.0", optional = true }
serde_json = { workspace = true, optional = true }
sp-core = { workspace = true, default-features = true, optional = true }
sp-io = { workspace = true, default-features = true, optional = true }
toml = { workspace = true, optional = true }

[build-dependencies]
anyhow = { workspace = true, default-features = true }
cargo_metadata = { workspace = true }
hex = { workspace = true, features = ["alloc"] }
pallet-revive-uapi = { workspace = true }
polkavm-linker = { version = "0.29.0" }
polkavm-linker = { version = "0.30.0" }
serde_json = { workspace = true }
toml = { workspace = true }

Expand All @@ -36,8 +42,13 @@ default = ["std"]
std = [
"alloy-core",
"anyhow",
"cargo_metadata",
"hex",
"hex/std",
"polkavm-linker",
"serde_json",
"serde_json/std",
"sp-core",
"sp-io",
"toml",
]
Loading
Loading