Commit Graph
31685 Commits
Author SHA1 Message Date
Duke 3f50dd988a Only use -rdynamic on debug builds 2024-09-16 11:26:28 -04:00
Duke c5eeb74807 Simplify MAX_BLOCK_SIZE
Our code requires sapling activation at height 1 so we can simplify this function
which should lead to some performance improvements since it is called from many
places, including mining code.
2024-09-16 11:06:31 -04:00
Duke 912942f2a8 Delete more CC stuff 2024-09-13 18:50:28 -04:00
Duke 4f4a72da8e Go back to taking both main+wallet lock in DecrementWitnesses
By taking a wallet lock first and then main later we run into
a potential deadlock :

2024-09-13 11:14:37 POTENTIAL DEADLOCK DETECTED
2024-09-13 11:14:37 Previous lock order was:
2024-09-13 11:14:37  (1) cs_wallet  wallet/wallet.cpp:985
2024-09-13 11:14:37  (2) cs_main  wallet/wallet.cpp:890
2024-09-13 11:14:37 Current lock order is:
2024-09-13 11:14:37  (2) cs_main  wallet/wallet.cpp:2845
2024-09-13 11:14:37  (1) cs_wallet  wallet/wallet.cpp:2845
2024-09-13 09:34:10 -04:00
Duke f5cae3b403 getinfo rpc needs a cs_wallet lock
Without it we get an AssertLockHeld when calling GetKeyPoolSize .
We could probably make this lock apply to less code, possibly only
the single line that calls GetKeyPoolSize() needs it.
2024-09-13 04:37:48 -04:00
Duke 6845fcd93a This rpc can only be used on non z2z chains 2024-09-13 04:22:28 -04:00
Duke be3641158a Only take cs_main lock in GetSaplingSpendDepth
We do not seem to need this lock for the entire DecrementNoteWitnesses function,
we need it only when calling GetSaplingSpendDepth. Also protects against
the case in the future where some code without cs_main calls GetSaplingSpendDepth.
2024-09-13 04:11:38 -04:00
Duke 72c530d281 SMART_CHAIN_SYMBOL is always defined 2024-09-13 03:50:07 -04:00
Duke 7e486538c9 SMART_CHAIN_SYMBOL is always set, so we can remove these checks 2024-09-12 20:12:26 -04:00
Duke 215d0b7db4 Remove commented out code 2024-09-12 20:02:10 -04:00
Duke 8b0c0493ac Ensure cs_main lock is held when TestBlockValidity() is called 2024-09-12 19:47:42 -04:00
Duke 04165e161a Explain more details about the burn address 2024-09-12 13:40:30 -04:00
Duke f8e7df37a1 Delete commented out code 2024-09-12 12:12:59 -04:00
Duke 7f9878cf0c Take a lock on cs_main in DecrementNoteWitnesses
Another possibly better approach would be to take a lock inside
GetSaplingSpendDepth since we want the lock to apply to as little
code as possible and it is GetSaplingSpendDepth that calls GetDepthInMainChain
which requires a cs_main lock .
2024-09-12 11:47:58 -04:00
Duke aab240e3b3 Temporary change to add -rdynamic to build flags
This allows us to see function names in a backtrace when AssertLockHeld
gives us an assert, which is helping to debug our deadlock bug.

This code should be improved to only do this for debug builds.
2024-09-12 11:21:46 -04:00
Duke ed86f2dd1d Sleep for 200us before each ActivateBestChainStep call
This should lower the main thread's likelihood to immediately reacquire
cs_main after dropping it, which should help ThreadNotifyWallets and the
RPC methods to acquire cs_main more quickly.

Ported from ZEC commit e2cd1b761fe556bc6d61849346902c3611530307
2024-09-12 00:21:56 -04:00
Duke b4e083ae56 Add what seems to be missing locks in mining code 2024-09-11 23:59:57 -04:00
Duke b71d95bdd4 Delete disabled code 2024-09-11 23:32:46 -04:00
Duke aa75877cd6 Print stacktrace when asserting a lock is held 2024-09-11 23:31:44 -04:00
Duke 726191cad4 Merge branch 'dev' into duke 2024-09-11 22:27:33 -04:00
Duke 2a910549ba Merge branch 'dev' of https://git.hush.is/hush/hush3 into dev 2024-09-11 14:53:58 -04:00
Duke 25f2ccb30e Document exactly what the RD6GgnrMpPaTSMn8vai6yiGA7mN4QGPVMY address is and how it is derived 2024-09-11 14:53:33 -04:00
duke 1965ad23c9 Merge pull request 'Sync duke to dev' (#415) from duke into dev
Reviewed-on: https://git.hush.is/hush/hush3/pulls/415
2024-08-11 19:01:17 +02:00
Duke 1e892f23e6 Remove dead nVersion code
This is very old code from the early days of Bitcoin, our mainnets have
never used peer protocol version.

Originally https://github.com/zcash/zcash/commit/150ab1d34c98096d28d4f7951a02516232f40ae2
2024-08-07 07:18:08 -07:00
Duke 7f27489224 Speed up compile by disabling libevent sample code, originally https://github.com/bitcoin/bitcoin/commit/f38c05104848db63ad0df85c24eea466dbff8536 2024-08-07 07:11:13 -07:00
Duke 379e419aad Convenience script for doing a debug build while autodecting correct OS build script 2024-06-12 13:12:20 -04:00
Duke 8d2380a31d Record value of DEBUG_LOCKORDER in debug.log 2024-06-09 12:10:59 -04:00
Duke 4f928513c1 Revert "Fix bug when using build-mac.sh and remove cryptoconditions from mac+win build scripts"
This reverts commit 46c738500f.
2024-06-09 11:25:37 -04:00
Duke 8a997b04f3 Check if the node should stop when processing thread interrupts and exceptions, in hopes of stopping before a deadlock occurs 2024-06-09 11:22:21 -04:00
Duke cc4b0750d8 Merge branch 'dev' into duke 2024-06-08 07:33:58 -07:00
Duke 46c738500f Fix bug when using build-mac.sh and remove cryptoconditions from mac+win build scripts 2024-06-08 07:16:37 -07:00
duke 1526a754d2 Merge pull request 'Prevent communication between HUSH3 nodes and DRAGONX nodes in both directions' (#410) from hushutils into dev
Reviewed-on: https://git.hush.is/hush/hush3/pulls/410
2024-05-22 13:11:15 +02:00
onryo 07054fc346 Prevent communication between HUSH3 nodes and DRAGONX nodes in both directions 2024-05-16 19:07:29 +02:00
jahway603 142c9e140e Merge pull request 'Updated urgency tags in contrib/debian/changelog' (#408) from jahway603 into dev
Reviewed-on: https://git.hush.is/hush/hush3/pulls/408
2024-05-09 16:44:44 +02:00
jahway603 006804d6ca Updated urgency tags in contrib/debian/changelog 2024-05-09 10:43:34 -04:00
jahway603 060acceea8 Merge pull request 'Updated Debian package changelog to resolve Issue #405' (#406) from jahway603 into dev
Reviewed-on: https://git.hush.is/hush/hush3/pulls/406
2024-05-09 16:16:47 +02:00
jahway603 41e7d602c8 Added changelog to Debian package building script 2024-05-09 10:12:44 -04:00
jahway603 535d78595e Updated Debian package changelog to resolve Issue #405 2024-05-09 09:43:56 -04:00
Duke 5273f4be9e Give Hush mainnet a dedicated minimum protocol version #345
Hush and DragonX do not have the same requirements for which nodes they
should talk to because they don't necessarily have consensus changes at
the same time. For instance, 3.10.0 was a consensus change for Hush but
not DragonX. This commit changes things so that Hush nodes will no
longer talk to old nodes that are not consensus compatible but leaves
things the same for DragonX mainnet, which has never had a consensus
change.
2024-05-06 08:46:21 -07:00
Duke ba86196409 This document is bitrotten and not useful 2024-05-06 08:33:20 -07:00
Duke e42b534036 Keybase is no longer used 2024-05-06 08:29:24 -07:00
Duke 18e3364bc2 Make docs for addnode/disconnectnode correct for HACs #376 2024-04-19 07:32:23 -04:00
Duke 0d0a7e9587 Fix 'writing 1 byte into region of size 0' 2024-04-18 06:41:25 -07:00
jahway603 b9d4dbbbd6 Merge pull request 'Update readme' (#402) from onryo/hush3:dev into dev
Reviewed-on: https://git.hush.is/hush/hush3/pulls/402
2024-04-03 20:46:37 +00:00
onryo f8481013a7 Update README 2024-04-03 19:01:21 +00:00
onryo d3b6af2c0b Add image 2024-04-03 18:46:12 +00:00
onryo 5e52b706e2 Update README 2024-04-03 18:45:31 +00:00
jahway603 e91cbff565 Merge pull request 'Move README to dev from master' (#401) from master into dev
Reviewed-on: https://git.hush.is/hush/hush3/pulls/401
2024-04-03 13:06:44 +00:00
jahway603 5fe2904bb1 Merge branch 'dev' into master 2024-04-03 13:02:27 +00:00
jahway603 06e46f7fcd Fixes to README.md
- Updated table on top of README
- Changed version specific instructions
- Removed SDX link, as that is not Hush
- Added back the Raspberry Pi ARM CPU info back under "Install on ARM Architecture"
- Changed Supportd and Socials section to use native Markdown instead of HTML
- Changed numbered lists to native Markdown format
2024-04-01 14:23:18 +00:00