Copy-on-write semantics for cached executors can be implemented by a simple Arc<CachedExecutors> as opposed to CowCachedExecutors: https://github.com/solana-labs/solana/blob/f1e2598ba/runtime/src/bank.rs#L244-L247 This will also avoid the need for double locking as in: https://github.com/solana-labs/solana/blob/f1e2598ba/runtime/src/bank.rs#L3490-L3491 https://github.com/solana-labs/solana/blob/f1e2598ba/runtime/src/bank.rs#L3525-L3526