-
Notifications
You must be signed in to change notification settings - Fork 21.6k
accounts/usbwallet: fix data race in self-derivation paths #33284
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
Open
prestoalvarez
wants to merge
229
commits into
ethereum:master
Choose a base branch
from
prestoalvarez:patch-4
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
229 commits
Select commit
Hold shift + click to select a range
6e64b11
p2p/discover: add waitForNodes
fjl 29faeee
p2p/discover: add context in waitForNodes
fjl 3c6e404
p2p/discover: move wait condition to lookupIterator
fjl 1c956a1
p2p/discover: improve iterator
fjl a8fff86
p2p/discover: fix bug in lookup
fjl af9eb45
p2p/discover: trigger refresh in lookupIterator
fjl e848f37
p2p/discover: track missing nodes in test
fjl 4d9ed32
p2p/discover: fix two bugs in lookup iterator
fjl eda3cfb
p2p/discover: remove print in test
fjl 6092898
p2p/discover: add imports in test
fjl f34a9a9
p2p/discover: clarify lookup behavior on empty table
cskiraly a974d74
p2p/discover: add test for lookup returning immediately
cskiraly 2b25b2b
Revert "p2p/discover: add test for lookup returning immediately"
cskiraly 60a6847
Update lookup.go
fjl c3f0e7a
p2p/discover: continue
fjl 1acd3e8
p2p/discover: expose timeout in lookupFailed
cskiraly 9ee23be
revert to using table parameter
cskiraly 0156585
go.mod: update c-kzg (#32639)
MariusVanDerWijden 7b9b0e7
go.mod: update go-eth-kzg (#32640)
MariusVanDerWijden 6ca13c6
core/stateless: add vmwitnessstats cli flag to report leaf stats + lo…
gballet 6db8bf6
triedb/pathdb: generalize the history indexer (#32523)
rjl493456442 b4682de
trie: add sub-trie iterator support (#32520)
samuelarogbonlo 59c2815
cmd/keeper: disable GC for zkvm execution (#32638)
gballet 7dd6477
core: fix fork readiness log (#32623)
lightclient 98a42fa
core/rawdb: report truncateErr in concurrent truncate failure (#32651)
GarmashAlex 43cd79c
build: update to execution-spec-tests v5.0.0 (#32592)
fjl 375b110
eth/catalyst, beacon/engine: enable BPO and Osaka on stateless APIs (…
rjl493456442 f170957
eth/filters, cmd: add config of eth_getLogs address limit (#32327)
hlongvu b253959
beacon/config: fix LoadForks with non-string values (#32609)
klim0v 7f3995d
internal/ethapi: skip tx gas limit check for calls (#32641)
fjl cfa209b
beacon/blsync: test validated finality (#32633)
zsfelfoldi 0a946fa
core/state: add missing address key in state_object log (#32676)
Galoretka 1c01fae
crypto/bn256: switch to gnark again (#32659)
MariusVanDerWijden fae2e94
core/txpool/blobpool: remove conversion in GetBlobs (#32578)
cskiraly d08a2a6
p2p: using testing.B.Loop (#32664)
cuiweixie e4ce2f5
core/state: using testing.B.Loop (#32658)
cuiweixie 759a617
eth: using testing.B.Loop (#32657)
cuiweixie bb1ca1c
log: using testing.B.Loop (#32663)
cuiweixie d6cb8a9
core: using testing.B.Loop (#32662)
cuiweixie b94e1a6
core/vm: using testing.B.Loop (#32660)
cuiweixie 5765c31
core/types: using testing.B.Loop (#32643)
cuiweixie b6866b7
crypto: using testing.B.Loop (#32645)
cuiweixie 7915b7d
fix: correct typo in TestMustParseUint64Panic error message (#32648)
CreeptoGengar 18bb7b4
common, eth: remove duplicate test cases (#32624)
zach871 1c3e5fd
core/rawdb: fix bad blocks sorted failure message to map index→number…
MozirDmitriy fde18ad
params: update config description links to new format (#32681)
lightclient 066a79b
core/txpool/blobpool: introduce sidecar conversion for legacy blob tr…
rjl493456442 aa4feba
go.work.sum: add to repo (#32677)
lightclient 3a1c99d
core/state: fix committed-state expectations in StateDB tests (#32678)
GarmashAlex aa917bb
triedb/pathdb: move head truncation log (#32649)
rjl493456442 758ad4d
cmd, tests: fix snapshot dump and export-preimages (#32650)
rjl493456442 062542a
go.work, build: remove workspace file (#32699)
fjl 4cf25a2
cmd/era: fix iterator error source handling in checkAccumulator (#32698)
MozirDmitriy a31c6a9
cmd/evm/internal/t8ntool: fix nil pointer dereference in Osaka blob g…
bshastry ce9a091
core/txpool/blobpool: add legacy sidecar conversion in reinject (#32688)
rjl493456442 dc50e57
accounts/keystore: use runtime.AddCleanup (#32610)
cuiweixie 4b2d3c6
internal/ethapi: fix merge transition in eth_simulate (#32616)
deffrian 22bce45
trie: align AllFFPrefix test assertion and message (#32719)
VolodymyrBg ec3b989
build: module-aware FindMainPackages (#32736)
fjl 560958f
miner: default gaslimit 60M (#32734)
fjl f0a6004
core/txpool/blobpool: fork boundary conversion 3 (#32716)
fjl 5921af2
trie: fix TestOneElementProof expected value message (#32738)
radik878 5c7313c
accounts/keystore: use ticker to avoid timer allocations (#32732)
viktorking7 af56c78
accounts/abi/bind: fix data race in TestWaitDeployedCornerCases (#32740)
hero5512 b3d985c
all: add bpo1 and bpo2 overrides (#32737)
lightclient 2e7dc73
core/txpool/blobpool: convert and add one-by-one (#32718)
cskiraly 7b8fdda
build: upgrade to execution-spec-tests v5.1.0 (#32742)
fjl 208c4aa
core/txpool: add eip2681 check for incoming transactions (#32726)
jsvisa ea52b0c
all: refactor to use builtin max/min (#32694)
cuiweixie 7fa1c99
params: schedule Osaka/BPO1/BPO2 for testnets (#32735)
fjl 80cd449
version: release go-ethereum v1.16.4 stable
fjl 7e84078
version: begin v1.16.5 release cycle
fjl 041403d
internal/ethapi: fix outdated comments (#32751)
wit765 344c023
ethapi: reject oversize storage keys before hex decode (#32750)
MatusKysel 1d7830d
signer/core: fix TestSignTx to decode res2 (#32749)
VolodymyrBg 1bbcf77
trie: correct error messages for UpdateStorage operations (#32746)
MozirDmitriy 1c5ae75
eth/tracers/native: add keccak256preimage tracer (#32569)
draganm 430f657
params: add amsterdam fork config (#32687)
MariusVanDerWijden 455369e
build: remove duplicated func FileExist (#32768)
cuiweixie faf987a
eth/catalyst: check osaka in engine_getBlobsV1 (#32731)
jsvisa ef13254
trie: fix error message in test (#32772)
VolodymyrBg 69b9b72
internal/ethapi: remove redundant check in test (#32760)
GarmashAlex 0c1ac59
cmd/evm/internal/t8ntool: panic on database corruption (#32776)
CPerezz 079960a
params: fix bpo config comments (#32755)
lightclient e8dd5a3
core/rawdb: update comments (#32668)
VolodymyrBg 7cf17ed
params: implement String() method for ChainConfig (#32766)
futreall c0638cf
params: add blob config information in the banner (#32771)
rjl493456442 53dc2db
core/txpool: remove unused signer field from TxPool (#32787)
MozirDmitriy 4c65d03
core/state: correct expected value in TestMessageCallGas (#32780)
Galoretka 63cab20
go.mod, cmd/keeper/go.mod: upgrade victoria metrics dependency (#32720)
gballet 7a7bab7
eth/catalyst: extend payloadVersion support to osaka/post-osaka forks…
yysung1123 3c03458
p2p: fix error message in test (#32804)
zach871 656ae02
signer/core: fix error message in test (#32807)
zach871 4ce18a9
params: fix banner message (#32796)
zach871 e4da48c
core/types, trie: reduce allocations in derivesha (#30747)
holiman 3295669
p2p/enode: fix discovery AyncFilter deadlock on shutdown (#32572)
zzzckck 103861a
core: refactor StateProcessor to accept ChainContext interface (#32739)
hero5512 af61ba8
p2p/enode: fix asyncfilter comment (#32823)
cskiraly 862f0fb
trie: cleaner array concatenation (#32756)
hero5512 802b36d
internal/ethapi: add timestamp to logs in eth_simulate (#32831)
deffrian db8ef2d
build: faster gh actions workflow, no ubuntu on appveyor (#32829)
s1na 15a0bdd
cmd/devp2p/internal/ethtest: update to PoS-only test chain (#32850)
fjl be9b32f
core/rawdb: remove duplicated type storedReceiptRLP (#32820)
sashass1315 6423c7b
eth/protocols/eth: use BlockChain interface in Handshake (#32847)
ngotchac 9761eb0
cmd/devp2p/internal/ethtest: accept responses in any order (#32834)
flcl42 9dcfdaf
core/rawdb: correct misleading comments for state history accessors (…
phrwlk d5bc4ab
eth/filters: terminate pending tx subscription on error (#32794)
CertiK-Geth 6190182
eth/filters: add `transactionReceipts` subscription (#32697)
10gic b34695d
core/txpool/legacypool: fix validTxMeter to count transactions (#32845)
cskiraly 9e7f1ca
eth/protocols/snap: optimize incHash (#32748)
cuiweixie 0764ea6
core/rawdb, triedb/pathdb: introduce trienode history (#32596)
rjl493456442 6f1d236
ethclient: add SubscribeTransactionReceipts (#32869)
10gic 729484b
node: fix error condition in gzipResponseWriter.init() (#32896)
lukema95 7403343
core/types: optimize MergeBloom by using bitutil (#32882)
cuiweixie b7e3cdf
p2p: rm unused var seedMinTableTime (#32876)
jsvisa 85c82d4
eth/filters: uninstall subscription in filter apis on error (#32894)
hyeonLewis f73f576
triedb, core/rawdb: implement the partial read in freezer (#32132)
jsvisa b0af5ed
p2p/enode: optimize LogDist (#32887)
cuiweixie 635db50
p2p/enode: optimize DistCmp (#32888)
cuiweixie 59e7da4
core/txpool/legacypool: move queue out of main txpool (#32270)
MariusVanDerWijden f86ec0c
cmd/workload: filter fuzzer test (#31613)
zsfelfoldi 592c540
p2p/discover: wait for bootstrap to be done (#32881)
jsvisa b01c3e9
triedb/pathdb: catch int conversion overflow in 32-bit (#32899)
gballet 7fa5365
eth/catalyst: remove useless log on enabling Engine API (#32901)
cskiraly 7dca2e6
eth: do not warn on switching from snap sync to full sync (#32900)
cskiraly 8107de3
core/txpool/legacypool: fix pricedList updates (#32906)
rjl493456442 2117944
accounts/abi: check presence of payable fallback or receive before pr…
cuiweixie c42f8f0
internal/ethapi: convert legacy blobtx proofs in sendRawTransaction (…
fjl d2234e8
rpc: fix flaky test TestServerWebsocketReadLimit (#32889)
mishraa-G 348df9f
eth/protocols/eth: reject message containing duplicated txs and drop …
jsvisa f4d138e
p2p/discover: remove hot-spin in table refresh trigger (#32912)
fjl 4f5c3f6
version: release go-ethereum v1.16.5 stable
fjl 2f1c600
version: begin v1.16.6 release cycle
fjl 9ba7e2a
cmd/geth: log current key in expandVerkle instead of keylist[0] (#32689)
Galoretka 8aa1683
ethclient: add support for eth_simulateV1 (#32856)
hero5512 0401194
internal/ethapi: add eth_SendRawTransactionSync (#32830)
aodhgan e52642d
core/state: state copy bugfixes with Verkle Trees (#31696)
yazzaoui 6fa85f8
eth/ethconfig : fix eth generate config (#32929)
ucwong bc5f27a
eth, internal: add blob conversion for SendRawTransactionSync (#32930)
rjl493456442 a6d0a9d
cmd/utils: use maximum uint64 value for receipt chain insertion (#32934)
CertiK-Geth d2e2383
eth/fetcher: add metrics for tracking slow peers (#32964)
healthykim 72a8a08
eth/fetcher: remove dangling peers from alternates (#32947)
healthykim 5af34cc
triedb/pathdb: fix index out of range panic in decodeSingle (#32937)
hero5512 4b85736
core/types: prealloc map in HashDifference as in TxDifference (#32946)
cuiweixie e79261d
eth/filters: avoid rebuild the hash map multi times (#32965)
mask-pp 56f4f2b
core/vm: don't call SetCode after contract creation if initcode didn'…
jwasinger f0f0294
cmd/keeper: use the ziren keccak precompile (#32816)
gballet 73a2c31
params: enable osaka on dev mode (#32917)
MariusVanDerWijden ef02d7f
core/txpool: Initialize journal writer for tx tracker (#32921)
KyrinCode e1d7775
core/state: prevent SetCode hook if contract code is not changed (#32…
rjl493456442 cb0fd7b
triedb/pathdb: make batch with pre-allocated size (#32914)
rjl493456442 0241006
cmd/geth: add flag to set genesis (#32844)
lightclient 66e6d4f
core/types: remove unused `ErrInvalidTxType` var (#32989)
cuiweixie f55c45d
core/state: fix the flaky TestSizeTracker (#32993)
jsvisa 2a2c9c1
cmd/devp2p: distinguish the jwt in devp2p and geth (#32972)
jsvisa b01111f
p2p: silence on listener shutdown (#33001)
jsvisa b7d47f7
cmd/utils: use IsHexAddress method (#32997)
mask-pp 4a134fb
crypto: implement ziren keccak state (#32996)
gballet a4ca207
rpc: fix a flaky test of the websocket (#33002)
jsvisa 8736dc4
eth/tracers: fix crasher in TraceCall with BlockOverrides (#33015)
hero5512 46de01d
.gitea/workflows, build: add release build for keeper (#32632)
gballet d96a7b3
build: fix keeper build (#33018)
fjl 38e9a9a
core/rawdb, triedb/pathdb: re-structure the trienode history header (…
rjl493456442 d34e77f
rpc: remove unused vars (#33012)
rizkyikiw42 9f6e8b0
core/state: improve accessList copy (#33024)
cuiweixie 72ff167
core: don't modify the shared chainId between tests (#33020)
jsvisa b556c24
core/types: optimize modernSigner.Equal (#32971)
cuiweixie dca3820
core: refine condition for using legacy chain freezer directory (#33032)
jsvisa baeb828
internal/jsre: pass correct args to setTimeout/setInterval callbacks …
anim001k 071a849
.github: add 32-bit CI targets (#32911)
gballet c726a2f
accounts/abi/bind/v2: fix error assertion in test (#33041)
alarso16 8376501
p2p: cleanup v4 if v5 failed (#33005)
jsvisa 1b59ef7
common: simplify FileExist helper (#32969)
MamunC0der 9d8ff5a
eth/downloader: fix incorrect waitgroup in test `XTestDelivery` (#33047)
wit765 55c147e
eth/tracers: fix prestateTracer for EIP-6780 SELFDESTRUCT (#33050)
hero5512 bd88892
common: fix duration comparison in PrettyAge (#33064)
maradini77 ad97f83
core/rawdb: fix db inspector by supporting trienode history (#33087)
rjl493456442 b6e10f4
params: set osaka and BPO1 & BPO2 mainnet dates (#33063)
MariusVanDerWijden aaa585d
version: release go-ethereum v1.16.6
fjl 9a99e0c
version: begin v1.16.7 release cycle
fjl 3c862f3
go.mod: update to c-kzg v2.1.5 (#33093)
MariusVanDerWijden 82aea44
version: release go-ethereum v1.16.7 stable
fjl d4d9fad
version: begin v1.16.8 release cycle
fjl 4507767
common: introduce IsHexHash and use it (#32998)
mask-pp a4b9acd
core/rawdb: fix readOnly mode for database (#33025)
MozirDmitriy 873432c
common: fix size comparison in StorageSize (#33105)
rizkyikiw42 e72b145
core/state: fix bug about getting stable LogsHash result. (#33082)
mask-pp f70cd5b
accounts/usbwallet: fix version check in SignTypedMessage (#33113)
rizkyikiw42 c752ea5
core/vm: remove todo (#33120)
MariusVanDerWijden 1fe3eaa
triedb/pathdb: fix 32-bit integer overflow in history trienode decode…
jsvisa 0b465b6
crypto: validate hash length in no cgo Sign (#33104)
lucia-w cd45794
consensus/misc/eip4844: expose TargetBlobsPerBlock (#32991)
Tristan-Wilson 1fdba72
eth/catalyst: always reset timer after sealing error (#33146)
sashass1315 d1d011c
build: add wasm targets for keeper (#33124)
gballet 1e98952
core/state: fixed hooked StateDB handling of `OnCodeChangeV2` (#33148)
maoueh f67fd7d
core/rawdb: capture open file error and fix resource leak (#33147)
lucia-w 32214de
rpc: avoid unnecessary RST_STREAM, PING frames sent by client (#33122)
michaelkaplan13 36c2ab4
core: remove unused peek function in insertIterator (#33155)
soniseth0 03faa98
core/txpool/blobpool: fix benchmarkPoolPending (#33161)
cskiraly 1547bcf
eth/filters: further optimize tx hash map in #32965 (#33108)
MonkeyMarcel fdb55d3
triedb/pathdb: fix ID assignment in history inspection (#33103)
Forostovec 2cc9396
eth/syncer: advance safe and finalized block (#33038)
jsvisa 64910c1
core: use scheme-aware empty root in flushAlloc (#33168)
Bashmunta b4de681
accounts/keystore: clear decrypted key after use (#33090)
phrwlk 1312886
graphql: add nil check in Transaction.Type() method (#33184)
oooLowNeoNooo 7fe9645
core/rawdb: return iterator error in findTxInBlockBody (#33188)
radik878 abc9be9
core/rawdb: delete dead code to avoid more useless AI submissions (#3…
gballet 4fbfa0c
cmd/evm/internal/t8ntool, trie: support for verkle-at-genesis, use UB…
gballet 6f44b29
ethapi: deref gasUsed pointer in eth_simulate log (#33192)
davidjsonn 05c26af
eth: fix panic in randomDuration when min equals max (#33193)
maradini77 38cb879
core: initialize tracer before DAO fork logic (#33214)
wit765 fb72d88
cmd/utils: make datadir.minfreedisk an IntFlag (#33252)
phrwlk 333f308
core, cmd: removed tablewriter from the dependencies (#33218)
cedrickah 3680ece
eth/catalyst: remove the outdated comments of ForkchoiceUpdatedV1 (#3…
georgehao 906e7c8
consensus/beacon: fix blob gas error message formatting (#33201)
rizkyikiw42 4730e13
core/txpool/blobpool: drain and signal pending conversion tasks on sh…
sashass1315 9b96714
core/rawdb: fix underflow in freezer inspect for empty ancients (#33203)
VolodymyrBg c913913
cmd/geth: skip resolver for zero-commitment verkle children (#33265)
Bashmunta ac03551
consensus/misc: fix blob gas error message formatting (#33275)
rizkyikiw42 99044e5
triedb/pathdb: implement iterator of history index (#32981)
rjl493456442 3690c9b
beacon: update beacon light client for fusaka (#33272)
zsfelfoldi bf41c07
rlp: finalize listIterator on parse error to prevent non-advancing lo…
radik878 8f17a97
accounts/usbwallet: fix double hashing in SignTextWithPassphrase (#33…
lucia-w 8a40666
p2p/discover/v5wire: remove redundant bytes clone in WHOAREYOU encodi…
soniseth0 cf820ff
miner: add --miner.maxblobs flag (#33129)
MariusVanDerWijden ad3a93f
core/vm: implement EIP-8024 (#33095)
jrhea a8d26b2
Update wallet.go
prestoalvarez f4d3df6
Update wallet.go
prestoalvarez 35c2950
Merge branch 'master' into patch-4
prestoalvarez File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the idea of not updating slices that are aliased to w.deriveNextPaths while holding stateLock.RLock. From reading the current code, it seems like SelfDerive is the only other user of deriveNextPaths and it always runs under stateLock.Lock. I could be wrong, but I’m not seeing an actual concurrent read/write.
Did you hit a -race report in practice, or is this more of a defensive change to avoid future issues?