Con Kolivas
c34ff36763
Use base_work for comparison just for cleanness in __copy_work
12 years ago
Con Kolivas
73671ab360
Remove all static work structs, using the make and free functions.
12 years ago
Con Kolivas
3ab92ef6ad
Add pool no. to stale share detected message.
12 years ago
Con Kolivas
850d07dffb
Add info about which pool share became stale while resubmitting.
12 years ago
Con Kolivas
31e43944bc
Do not use or count or use the getworks submitted which are simply testing that pools are still up. This was increasing share leakage and making stats not reflect real work.
12 years ago
Con Kolivas
2d35ac2567
Track all dynamically allocated memory within the work struct by copying work structs in a common place, creating freshly allocated heap ram for all arrays within the copied struct.
...
Clear all work structs from the same place to ensure memory does not leak from arrays within the struct.
Convert the gbt coinbase and stratum strings within the work struct to heap ram.
This will allow arbitrary lengths without an upper limit for the strings, preventing the overflows that happen with GBT.
12 years ago
Con Kolivas
aa72db369e
Provide rudimentary support for the balancing failover strategies with stratum and GBT by switching pools silently on getwork requests.
12 years ago
Con Kolivas
40a3331e72
Remove unintentional block of code in reuse_work.
12 years ago
Con Kolivas
9ad02fe303
Support workid for block submission on GBT pools that use it.
12 years ago
Con Kolivas
61f4e9d604
Revert "Discard all work on longpoll, not just work cgminer recognises as stale."
...
This reverts commit 1470eea903
.
Work block update makes this unnecessary.
12 years ago
Con Kolivas
4039ee7a93
Convert pool not responding and pool alive message on backup pools to verbose level only since they mean a single failed getwork.
12 years ago
Con Kolivas
52b86b5137
Update work block on the longpoll work item before calling restart threads to ensure all work but the longpoll work item gets discarded when we call discard_stale from restart_threads.
12 years ago
Con Kolivas
1470eea903
Discard all work on longpoll, not just work cgminer recognises as stale.
12 years ago
Con Kolivas
88983306fd
Do not attempt to remove the stratum share hash after unsuccessful submission since it may already be removed by clear_stratum_shares.
12 years ago
Con Kolivas
d15515bea4
Check against a double for current pool diff.
12 years ago
Con Kolivas
b3864d1a94
Support for fractional diffs and the classic just-below-1 share all FFs diff target.
12 years ago
Con Kolivas
1832dbd7f6
Make header larger on gen stratum work to accomodate \0 at the end.
12 years ago
Con Kolivas
66a9577197
Fix mistaken disabling of opt_restart in other code.
12 years ago
Con Kolivas
89cb14199a
Use stratum block change from backup pools as an alternative to longpoll for pools that don't support LP.
12 years ago
Con Kolivas
38eb4ee43b
Check share target diff for best_share to be calculated when solo mining.
12 years ago
Con Kolivas
7993095ec3
Round some more static string arrays to 4 byte boundaries.
12 years ago
Con Kolivas
17aa87be3a
There is no need for the static arrays to be larger than required, so long as they're 4 byte aligned to appease ARM.
12 years ago
Con Kolivas
149781cf47
Revert "Change default log interval to 3 seconds for faster screen refreshes since vardiff will prevent massive on screen hash updates in the future."
...
This reverts commit f1f6b31faf
.
Screen update frequency is what I wanted to change, not the log interval.
12 years ago
Con Kolivas
298ffcbc9e
Store the full stratum url information in rpc_url for correct configuration file saving.
12 years ago
Con Kolivas
2cf0767cff
Put in a hack to prevent dud work from sneaking into test_work_current being seen as a new block.
12 years ago
Con Kolivas
ad2ed57f12
Reset the work->longpoll flag where it will affect stratum work items as well.
12 years ago
Con Kolivas
1d7e19f2f2
Check for both coinbase/append and submit/coinbase support before using GBT protocol.
12 years ago
Con Kolivas
878f4d53ab
First pass through testing for GBT should not set probed to true since we are about to probe again.
12 years ago
Con Kolivas
598ee76d37
Hash1 is only used by the deprecated cpu mining code and never changes so remove it from the work struct and bypass needing to process the value for all other mining.
12 years ago
Con Kolivas
f1f6b31faf
Change default log interval to 3 seconds for faster screen refreshes since vardiff will prevent massive on screen hash updates in the future.
12 years ago
Con Kolivas
6893c0be43
Get a work item once per second for all getwork and GBT pools to test they're still alive and to maintain a current GBT template.
12 years ago
Con Kolivas
dd671baaa1
Get a fresh block template with GBT pools on switching to them.
12 years ago
Con Kolivas
be82cc7fba
Reset work flags to prevent GBT shares from being submitted as stratum ones after switching.
12 years ago
Con Kolivas
a47a7886d5
Only retarget stratum shares to new pool diff if diff has dropped.
12 years ago
Con Kolivas
498882d829
Remove resetting of probed variable when detecting GBT.
12 years ago
Con Kolivas
27ce497a7c
Count lost stratum share submits and increase message priority to warning.
12 years ago
Con Kolivas
418d15deba
Only retrieve a new block template for GBT pools that are the current pool.
12 years ago
Paul Sheppard
69f341c5bb
Remove errant counter.
12 years ago
Con Kolivas
75d0a45a10
Show which pool untracked share messages have come from.
12 years ago
Con Kolivas
e0157208ab
Add management for dead GBT pools.
12 years ago
Con Kolivas
ffb8a29abf
Count lost shares with stratum as submit stale lost.
12 years ago
Con Kolivas
0465fef553
Discard record of stratum shares sent and report lost shares on disconnection since they will never be reported back.
12 years ago
Con Kolivas
0314081157
Swab, don't just swap the bytes in the GBT target.
12 years ago
Con Kolivas
275bb9c05e
Change status window message for GBT connected pools versus LP.
12 years ago
Con Kolivas
1321cb0e0d
Generate a gbt work item from longpoll when required to set new block and message appropriately.
12 years ago
Con Kolivas
10ea5fbf97
Use existing pool submit_old bool from gbt data.
12 years ago
Con Kolivas
f71b423080
Retrieve a new block template if more than 30 seconds has elapsed since the last one to keep the data current and test the pool is still alive.
12 years ago
Con Kolivas
fc94e00fd1
Update GBT longpollid every time we request a new longpoll.
12 years ago
Con Kolivas
cc7c274543
Manage appropriate response codes for share submission with GBT.
12 years ago
Con Kolivas
345e72e66e
Allow the longpoll thread to start with GBT and only set the longpollid once.
12 years ago