From 04529b3ea2677cad598b31f4347066757ede2bd9 Mon Sep 17 00:00:00 2001 From: s7v7nislands Date: Fri, 10 Mar 2023 10:50:07 +0800 Subject: [PATCH 1/2] core: refactor code --- core/blockchain.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/blockchain.go b/core/blockchain.go index f22562ccfa94..edcf569a57c7 100644 --- a/core/blockchain.go +++ b/core/blockchain.go @@ -1741,7 +1741,7 @@ func (bc *BlockChain) insertChain(chain types.Blocks, verifySeals, setHead bool) throwaway, _ := state.New(parent.Root, bc.stateCache, bc.snaps) go func(start time.Time, followup *types.Block, throwaway *state.StateDB, interrupt *uint32) { - bc.prefetcher.Prefetch(followup, throwaway, bc.vmConfig, &followupInterrupt) + bc.prefetcher.Prefetch(followup, throwaway, bc.vmConfig, interrupt) blockPrefetchExecuteTimer.Update(time.Since(start)) if atomic.LoadUint32(interrupt) == 1 { From 4333b9edb6780b85afd130142b3e84e9a8e75bf0 Mon Sep 17 00:00:00 2001 From: s7v7nislands Date: Fri, 10 Mar 2023 17:31:46 +0800 Subject: [PATCH 2/2] core: drop it from this anonymous goroutine func --- core/blockchain.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/blockchain.go b/core/blockchain.go index edcf569a57c7..1fe7d73e0087 100644 --- a/core/blockchain.go +++ b/core/blockchain.go @@ -1740,14 +1740,14 @@ func (bc *BlockChain) insertChain(chain types.Blocks, verifySeals, setHead bool) if followup, err := it.peek(); followup != nil && err == nil { throwaway, _ := state.New(parent.Root, bc.stateCache, bc.snaps) - go func(start time.Time, followup *types.Block, throwaway *state.StateDB, interrupt *uint32) { - bc.prefetcher.Prefetch(followup, throwaway, bc.vmConfig, interrupt) + go func(start time.Time, followup *types.Block, throwaway *state.StateDB) { + bc.prefetcher.Prefetch(followup, throwaway, bc.vmConfig, &followupInterrupt) blockPrefetchExecuteTimer.Update(time.Since(start)) - if atomic.LoadUint32(interrupt) == 1 { + if atomic.LoadUint32(&followupInterrupt) == 1 { blockPrefetchInterruptMeter.Mark(1) } - }(time.Now(), followup, throwaway, &followupInterrupt) + }(time.Now(), followup, throwaway) } }