Con Kolivas
98151b2ee4
Generalise the code for solving a block to enable block solve detection with scrypt mining.
2012-12-25 14:36:08 +11:00
Con Kolivas
f0c1782c03
Generate the output hash for scrypt as well and use the one function to set share_diff.
2012-12-25 14:08:27 +11:00
Con Kolivas
f86e893118
Use the flip80 function in regeneratehash and the correct sized hash array.
2012-12-24 14:13:28 +11:00
Con Kolivas
93e3c16aa8
Stage work outside of the stgd lock to prevent attempted recursive locking in clone_available.
2012-12-24 13:49:28 +11:00
Con Kolivas
34879487fc
share_diff needs to be performed on a BE version of the output hash to work, leading to false best_share values as spotted by luke-Jr.
2012-12-24 13:31:45 +11:00
Con Kolivas
deb9aec0ed
Remove the unused sha224 functions.
2012-12-24 12:54:09 +11:00
Con Kolivas
432bfd0e5c
Use the flip functions in hashtest.
2012-12-24 12:39:27 +11:00
Con Kolivas
54e218b6d4
Simplify the setting of the nonce data field in work on submitting nonces.
2012-12-24 11:19:33 +11:00
Con Kolivas
69dd5affe3
Scrypt code does not enter the hashtest function.
2012-12-24 10:45:57 +11:00
ckolivas
9fd60bb53a
Merge branch 'master' of github.com:ckolivas/cgminer
2012-12-24 10:34:06 +11:00
Con Kolivas
df7370d066
Go back to cloning available work under staged lock.
2012-12-24 10:26:56 +11:00
ckolivas
d91dc188d2
scrypt_diff uses a uint64_t as well.
2012-12-23 15:44:43 +11:00
Con Kolivas
bb64799c84
Correct target for stratum support with scrypt mining.
2012-12-22 08:37:43 +11:00
Con Kolivas
b9c7f3d169
Remove debugging message :P
2012-12-19 21:31:22 +11:00
Con Kolivas
a07e0155bc
Stop all work from the current pool if it's a stratum pool once it is disconnected since it will be invalid upon reconnecting.
2012-12-19 20:53:11 +11:00
Con Kolivas
8dbb3fa2f9
Discard all staged work from stratum pools as well as the shares upon disconnection since all the work becomes invalid.
2012-12-19 20:51:22 +11:00
Con Kolivas
a7128e008f
Use correct cbreak after 15 second delay when no pool is found alive.
2012-12-19 20:21:32 +11:00
Con Kolivas
4f1f5c8ec9
Revert "Reset lagging flag after it has been used in the getwork scheduler."
...
This reverts commit 19267907c038a0d5e94be2b229d1e61b565e371d.
Redundant.
2012-12-19 20:04:22 +11:00
ckolivas
19267907c0
Reset lagging flag after it has been used in the getwork scheduler.
2012-12-19 14:41:42 +11:00
ckolivas
14457a0b9b
Allow stratum to work with scrypt.
2012-12-19 14:41:29 +11:00
Con Kolivas
3b910336ce
Protect the best_share/best_diff values under control lock.
2012-12-18 22:48:56 +11:00
Con Kolivas
9ef73d9300
Check a stratum pool hasn't gone dead while being a backup pool and missed having its idle flag cleared.
2012-12-17 12:27:50 +11:00
Kano
43e8b88a73
Benchmark incorrect work size
2012-12-12 19:52:36 +11:00
Con Kolivas
e51ee93182
Set tv_idle time if a pool is not active when input from the menu.
2012-12-10 21:25:17 +11:00
Con Kolivas
70b6287627
Merge pull request #354 from kanoi/api
...
minor unlikely zero pointer test
2012-12-09 23:58:54 -08:00
Kano
58a7226d96
minor unlikely zero pointer test
2012-12-10 18:42:32 +11:00
Con Kolivas
c3fb1bcef5
Revert "Selectively discard all work items if a longpoll or stratum restart is received without a new block to work on."
...
This reverts commit 31f75098b51465c885dc36b49b29b2d82dd216e3.
Mistake, set in work_block already.
2012-12-10 15:40:16 +11:00
Con Kolivas
1922e498e3
Only stratum pools that are idle need to be kicked via cnx_needed.
2012-12-10 11:03:50 +11:00
Con Kolivas
c5d9f3ac60
Only set the lagging flag for select_pool() on failed getwork if we're not in opt_fail_only mode.
2012-12-10 10:32:21 +11:00
Con Kolivas
383b42f23e
Set the pool lagging flag on startup to avoid it being shown initially, and only unset it once the maximum number of staged work items has been reached.
2012-12-09 17:15:13 +11:00
Con Kolivas
8feb302945
Avoid recursive locking of the stgd lock.
2012-12-09 15:38:44 +11:00
Con Kolivas
c59aeb56ff
Revert "Wake the getwork scheduler after every restart threads."
...
This reverts commit 5b03e7497db5cc0cab7d2b788168c2d3f2b0fc87.
Redundant.
2012-12-09 15:29:06 +11:00
Con Kolivas
31f75098b5
Selectively discard all work items if a longpoll or stratum restart is received without a new block to work on.
2012-12-09 15:28:30 +11:00
Con Kolivas
5b03e7497d
Wake the getwork scheduler after every restart threads.
2012-12-09 15:11:49 +11:00
Con Kolivas
01b9c6dfbf
Make main() the getwork scheduler once everything is set up, so that all app exits use the kill_work and quit paths.
2012-12-09 08:22:13 +11:00
Con Kolivas
30f6840b5c
Only consider work stale for stratum of different job_id if it's not a share.
2012-12-08 22:08:23 +11:00
Con Kolivas
67a9af68a1
Hash_pop should signal further waiters on its own pthread conditional in case there are multiple waiters.
2012-12-08 21:53:06 +11:00
Con Kolivas
5c4c2d6786
Check the job_id has not changed on stratum work when deciding if the work is stale as might occur across disconnections.
2012-12-08 21:45:15 +11:00
Con Kolivas
fcb265322d
Perform pool_resus on getwork pool that generates work in getwork_thread.
2012-12-08 21:35:14 +11:00
Con Kolivas
3d1e9f5098
Set pool lagging message for getwork pool that falls to zero staged in getwork thread.
2012-12-08 21:32:49 +11:00
Con Kolivas
927730ae2c
Stage extra work when the primary pool is a getwork pool without rolltime.
2012-12-08 21:27:40 +11:00
Con Kolivas
24de9b8655
Do not try to clean up twice if kill message is given.
2012-12-08 21:23:33 +11:00
Con Kolivas
84b44fd852
Only recalculate total_staged in getwork thread if required.
2012-12-08 21:21:19 +11:00
Con Kolivas
b28055517e
Implement a completely new getwork scheduler.
...
Stage all work from the one thread, making it possible to serialise all requests minimising the number of getworks requested or local work generated.
Use a pthread conditional to wake up the thread whenever work is removed to generate enough work to stay above the watermark set by opt_queue.
Remove all remnants of the old queueing mechanism, deleting the now defunct queued count.
2012-12-08 21:13:04 +11:00
Con Kolivas
dd65818295
Remove all references to the now unused workio_cmd structure.
2012-12-07 13:45:03 +11:00
Con Kolivas
ed1b5cae0d
Remove the old workio command queue thread, replacing it with a kill conditional to exit the program.
2012-12-07 13:40:26 +11:00
Con Kolivas
59ddfd07a7
Remove getwork command from workio_cmd queues and do them directly from queue_request.
2012-12-07 13:32:23 +11:00
Con Kolivas
c99636f21b
Begin tearing down the old workio command queues by removing submit commands from there and submit them asynchronously via their own threads.
2012-12-07 13:21:46 +11:00
Luke Dashjr
1a8fe32e4c
Bugfix: Free filename entry for writing config file when done with it
2012-12-06 19:11:01 +00:00
Con Kolivas
c0cd006f42
Allow pool active to be called on stratum or disabled pools in the watchpool thread if the pool has not been probed.
2012-12-04 21:49:11 +11:00