Gregory Maxwell
e3ba0ef956
Eliminate data races for strMiscWarning and fLargeWork*Found.
...
This moves all access to these datastructures through accessor functions
and protects them with a lock.
8 years ago
Gregory Maxwell
c63198f1c7
Make QT runawayException call GetWarnings instead of directly access strMiscWarning.
...
This is a first step in avoiding racy accesses to strMiscWarning.
The change required moving GetWarnings and related globals to util.
8 years ago
Pieter Wuille
2efcfa5acf
Merge #9260 : Mrs Peacock in The Library with The Candlestick (killed main.{h,cpp})
...
76faa3c
Rename the remaining main.{h,cpp} to validation.{h,cpp} (Matt Corallo)
e736772
Move network-msg-processing code out of main to its own file (Matt Corallo)
87c35f5
Remove orphan state wipe from UnloadBlockIndex. (Matt Corallo)
8 years ago
MarcoFalke
c36229b0b2
Merge #9251 : Improvement of documentation of command line parameter 'whitelist'
...
8a70a9d
Improvement of documentation of command line parameter 'whitelist' (wodry)
8 years ago
MarcoFalke
9e4bb312e6
Merge #9221 : [qa] Get rid of duplicate code
...
facbfa5
[qa] Get rid of duplicate code (MarcoFalke)
8 years ago
Matt Corallo
76faa3cdfe
Rename the remaining main.{h,cpp} to validation.{h,cpp}
8 years ago
Matt Corallo
e736772c56
Move network-msg-processing code out of main to its own file
8 years ago
MarcoFalke
d7ba4a233b
Merge #9257 : [qa] Dump debug logs on travis failures.
...
0828619
[qa] Dump debug logs on travis failures. (Suhas Daftuar)
8 years ago
MarcoFalke
facbfa5816
[qa] Get rid of duplicate code
8 years ago
MarcoFalke
98514988a3
Merge #9246 : Developer docs about existing subtrees.
...
08ed8c1
Developer docs about existing subtrees. (Gregory Maxwell)
8 years ago
MarcoFalke
5412c08c3c
Merge #9223 : unification of Bloom filter representation
...
b7aa290
unification of Bloom filter representation (S. Matthew English)
8 years ago
MarcoFalke
31bcc66786
Merge #9265 : bitcoin-cli: Make error message less confusing
...
fe37fbe
bitcoin-cli: Make error message less confusing (Wladimir J. van der Laan)
8 years ago
Gregory Maxwell
08ed8c1d07
Developer docs about existing subtrees.
...
Add some notes about the workflow for changes to code that exists in subtrees.
8 years ago
Wladimir J. van der Laan
fe37fbe606
bitcoin-cli: Make error message less confusing
...
Sorry for the churn on this, but the current message (introduced in #9073 )
isn't acceptable:
$ src/bitcoin-cli getinfo
rpc: couldn't connect to server
(make sure server is running and you are connecting to the correct RPC port: -1 unknown)
Putting the error code after the words "RPC port" made me wonder whether
there was a port configuration issue.
This changes it to:
$ src/bitcoin-cli getinfo
error: couldn't connect to server: unknown (code -1)
(make sure server is running and you are connecting to the correct RPC port)
8 years ago
Wladimir J. van der Laan
3fbf079262
Merge #9239 : Disable fee estimates for 1 block target
...
e878689
Make GUI incapable of setting tx confirm target of 1 (Alex Morcos)
d824ad0
Disable fee estimates for a confirm target of 1 block (Alex Morcos)
8 years ago
Wladimir J. van der Laan
c4d22f6eb2
Merge #9229 : Remove calls to getaddrinfo_a
...
10ae7a7
Revert "Use async name resolving to improve net thread responsiveness" (Matt Corallo)
8 years ago
Matt Corallo
87c35f5843
Remove orphan state wipe from UnloadBlockIndex.
...
As orphan state is now "network state", like in
d6ea737be1
,
UnloadBlockIndex is only used during init if we end up reindexing
to clear our block state so that we can start over. However, at
that time no connections have been brought up as CConnman hasn't
been started yet, so all of the network processing state logic is
empty when its called.
8 years ago
Pieter Wuille
dc6dee41f7
Merge #9183 : Final Preparation for main.cpp Split
...
2c8c57e
Document cs_main status when calling into PNB or PNBH (Matt Corallo)
58a215c
Use ProcessNewBlockHeaders in CMPCTBLOCK processing (Matt Corallo)
a8b936d
Use exposed ProcessNewBlockHeaders from ProcessMessages (Matt Corallo)
63fd101
Split ::HEADERS processing into two separate cs_main locks (Matt Corallo)
4a6b1f3
Expose AcceptBlockHeader through main.h (Matt Corallo)
8 years ago
Matt Corallo
10ae7a7b23
Revert "Use async name resolving to improve net thread responsiveness"
...
This reverts commit caf6150e97
.
getaddrinfo_a has a nasty tendency to segfault internally in its
background thread, on every version of glibc I tested, especially
under helgrind.
See https://sourceware.org/bugzilla/show_bug.cgi?id=20874
8 years ago
Pieter Wuille
ad826b3df9
Merge #9188 : Make orphan parent fetching ask for witnesses.
...
5b0150a
Make orphan parent fetching ask for witnesses. (Gregory Maxwell)
8 years ago
Pieter Wuille
c1a5227684
Merge #9253 : Fix calculation of number of bound sockets to use
...
9e1f468
Fix calculation of number of bound sockets to use (Matt Corallo)
8 years ago
Matt Corallo
2c8c57e72f
Document cs_main status when calling into PNB or PNBH
8 years ago
Matt Corallo
58a215ce8c
Use ProcessNewBlockHeaders in CMPCTBLOCK processing
8 years ago
Matt Corallo
a8b936df20
Use exposed ProcessNewBlockHeaders from ProcessMessages
8 years ago
Wladimir J. van der Laan
c79e52ad30
Merge #9230 : Fix some benign races in timestamp logging
...
8b22efb
Make fStartedNewLine an std::atomic_bool (Matt Corallo)
507145d
Fix race when accessing std::locale::classic() (Matt Corallo)
8 years ago
Matt Corallo
9e1f46821d
Fix calculation of number of bound sockets to use
8 years ago
Pieter Wuille
3bf06e9bac
Merge #9226 : Remove fNetworkNode and pnodeLocalHost.
...
bdb922b
Remove pnodeLocalHost. (Gregory Maxwell)
083f203
Remove fNetworkNode. (Gregory Maxwell)
8 years ago
Pieter Wuille
72ae6f8cf0
Merge #9244 : Trivial refactor: Remove extern keyword from function declarations
...
446a8f9
Trivial refactor: Remove extern keyword from function declarations, as they are extern by default. (Karl-Johan Alm)
8 years ago
Pieter Wuille
a143b88dbd
Merge #9010 : Split up AppInit2 into multiple phases, daemonize after datadir lock errors
...
deec83f
init: Get rid of fServer flag (Wladimir J. van der Laan)
16ca0bf
init: Try to aquire datadir lock before and after daemonization (Wladimir J. van der Laan)
0cc8b6b
init: Split up AppInit2 into multiple phases (Wladimir J. van der Laan)
8 years ago
wodry
8a70a9da3d
Improvement of documentation of command line parameter 'whitelist'
8 years ago
Suhas Daftuar
0828619e96
[qa] Dump debug logs on travis failures.
8 years ago
Wladimir J. van der Laan
56bee4986d
Merge #9234 : torcontrol: Explicitly request RSA1024 private key
...
7d3b627
torcontrol: Explicitly request RSA1024 private key (Wladimir J. van der Laan)
8 years ago
Karl-Johan Alm
446a8f9c90
Trivial refactor: Remove extern keyword from function declarations, as they are extern by default.
8 years ago
Alex Morcos
e878689e55
Make GUI incapable of setting tx confirm target of 1
8 years ago
Alex Morcos
d824ad030e
Disable fee estimates for a confirm target of 1 block
8 years ago
Wladimir J. van der Laan
deec83fd2c
init: Get rid of fServer flag
...
There is no need to store this flag globally, the variable is only used
inside the initialization process.
Thanks to Alex Morcos for the idea.
8 years ago
Wladimir J. van der Laan
16ca0bfd28
init: Try to aquire datadir lock before and after daemonization
...
Before daemonization, just probe the data directory lock and print an
early error message if possible.
After daemonization get the data directory lock again and hold on to it until exit
This creates a slight window for a race condition to happen, however this condition is harmless: it
will at most make us exit without printing a message to console.
$ src/bitcoind -testnet -daemon
Bitcoin server starting
$ src/bitcoind -testnet -daemon
Error: Cannot obtain a lock on data directory /home/orion/.bitcoin/testnet3. Bitcoin Core is probably already running.
8 years ago
Wladimir J. van der Laan
0cc8b6bc44
init: Split up AppInit2 into multiple phases
...
This allows doing some of the steps before e.g. daemonization and some
fater.
8 years ago
Wladimir J. van der Laan
e56cf67e6b
Merge #9202 : bench: Add support for measuring CPU cycles
...
3532818
bench: Add support for measuring CPU cycles (Wladimir J. van der Laan)
8 years ago
Wladimir J. van der Laan
5488514b90
Merge #9225 : Fix some benign races
...
dfed983
Fix unlocked access to vNodes.size() (Matt Corallo)
3033522
Remove double brackets in addrman (Matt Corallo)
dbfaade
Fix AddrMan locking (Matt Corallo)
047ea10
Make fImporting an std::atomic (Matt Corallo)
42071ca
Make fDisconnect an std::atomic (Matt Corallo)
8 years ago
Wladimir J. van der Laan
0a0441358c
Merge #9224 : Prevent FD_SETSIZE error building on OpenBSD
...
498a1d7
Include select.h when WIN32 is not defined (Ivo van der Sangen)
8 years ago
Ivo van der Sangen
498a1d75e7
Include select.h when WIN32 is not defined
8 years ago
MarcoFalke
7bd1aa566f
Merge #9233 : Fix some typos
...
15fa95d
Fix some typos (fsb4000)
8 years ago
Wladimir J. van der Laan
7d3b627395
torcontrol: Explicitly request RSA1024 private key
...
When generating a new service key, explicitly request a RSA1024 one.
The bitcoin P2P protocol has no support for the longer hidden service names
that will come with ed25519 keys, until it does, we depend on the old
hidden service type so make this explicit.
See #9214 .
8 years ago
fsb4000
15fa95d7e5
Fix some typos
8 years ago
Matt Corallo
8b22efb6f7
Make fStartedNewLine an std::atomic_bool
...
While this doesnt really fix the race of adding timestamps
mid-logical-line, it avoids the undefined behavior of using a
bool in multiple threads.
8 years ago
Matt Corallo
507145d785
Fix race when accessing std::locale::classic()
...
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78552
8 years ago
MarcoFalke
c4522e71c7
Merge #9219 : doc: Improve windows build instructions using Linux subsystem
...
dd34570
doc: Improve windows build instructions using Linux subsystem (Wladimir J. van der Laan)
8 years ago
Gregory Maxwell
bdb922b34c
Remove pnodeLocalHost.
...
Mostly a legacy of the long removed pub/sub system.
8 years ago
Gregory Maxwell
083f203698
Remove fNetworkNode.
...
Matt pointed out to me that this appeared to be doing nothing (except involving itself in data races).
8 years ago