cgminer.c


Log

Author Commit Date CI Message
Kano 4c2f26e2 2013-01-02T22:34:05 zero (most) API stats
Kano 03f626e6 2013-01-02T21:51:09 Remember best share per pool and return in API pools
Con Kolivas ec9b32aa 2012-12-31T09:15:17 Zero the best share string memory when zeroing stats.
Con Kolivas 6e2e7d36 2012-12-29T10:46:55 Differentiate socket full from sock full.
Con Kolivas 7f46f6e9 2012-12-29T10:42:45 Allow stratum to startup without notify but check it is valid before creating stratum work.
Con Kolivas e1d7ecdd 2012-12-29T09:45:40 Do not try to generate stratum work unless the notify command has succeeded.
Con Kolivas 34a6c59a 2012-12-27T09:49:22 Reset total diff1 shares when zeroing stats as well to show correct work utility.
Con Kolivas 8958ee42 2012-12-26T09:38:58 Do not give the share submission failure message on planned stratum disconnects.
Con Kolivas 944af31b 2012-12-26T09:31:41 Parse anything in the stratum socket if it's full without waiting. Empty the socket even if a connection is not needed in case there are share returns.
Con Kolivas dd4e5159 2012-12-25T23:44:26 Provide a mechanism to zero all the statistics from the menu.
Con Kolivas d3bfee14 2012-12-25T23:14:21 Display the current pool diff in the status line.
Con Kolivas fedf0f11 2012-12-25T14:53:44 Display block diff in status line.
Con Kolivas 98151b2e 2012-12-25T14:36:08 Generalise the code for solving a block to enable block solve detection with scrypt mining.
Con Kolivas f0c1782c 2012-12-25T14:08:27 Generate the output hash for scrypt as well and use the one function to set share_diff.
Con Kolivas f86e8931 2012-12-24T14:13:28 Use the flip80 function in regeneratehash and the correct sized hash array.
Con Kolivas 93e3c16a 2012-12-24T13:49:28 Stage work outside of the stgd lock to prevent attempted recursive locking in clone_available.
Con Kolivas 34879487 2012-12-24T13:31:45 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.
Con Kolivas deb9aec0 2012-12-24T12:54:09 Remove the unused sha224 functions.
Con Kolivas 432bfd0e 2012-12-24T12:39:27 Use the flip functions in hashtest.
Con Kolivas 54e218b6 2012-12-24T11:19:33 Simplify the setting of the nonce data field in work on submitting nonces.
Con Kolivas 69dd5aff 2012-12-24T10:45:57 Scrypt code does not enter the hashtest function.
ckolivas 9fd60bb5 2012-12-24T10:34:06 Merge branch 'master' of github.com:ckolivas/cgminer
Con Kolivas df7370d0 2012-12-24T10:26:56 Go back to cloning available work under staged lock.
ckolivas d91dc188 2012-12-23T15:44:43 scrypt_diff uses a uint64_t as well.
Con Kolivas bb64799c 2012-12-22T08:37:43 Correct target for stratum support with scrypt mining.
Con Kolivas b9c7f3d1 2012-12-19T21:31:22 Remove debugging message :P
Con Kolivas a07e0155 2012-12-19T20:53:11 Stop all work from the current pool if it's a stratum pool once it is disconnected since it will be invalid upon reconnecting.
Con Kolivas 8dbb3fa2 2012-12-19T20:51:22 Discard all staged work from stratum pools as well as the shares upon disconnection since all the work becomes invalid.
Con Kolivas a7128e00 2012-12-19T20:21:32 Use correct cbreak after 15 second delay when no pool is found alive.
Con Kolivas 4f1f5c8e 2012-12-19T20:04:22 Revert "Reset lagging flag after it has been used in the getwork scheduler." This reverts commit 19267907c038a0d5e94be2b229d1e61b565e371d. Redundant.
ckolivas 19267907 2012-12-19T14:41:42 Reset lagging flag after it has been used in the getwork scheduler.
ckolivas 14457a0b 2012-12-19T14:41:29 Allow stratum to work with scrypt.
Con Kolivas 3b910336 2012-12-18T22:48:56 Protect the best_share/best_diff values under control lock.
Con Kolivas 9ef73d93 2012-12-17T12:27:50 Check a stratum pool hasn't gone dead while being a backup pool and missed having its idle flag cleared.
Kano 43e8b88a 2012-12-12T19:52:36 Benchmark incorrect work size
Con Kolivas e51ee931 2012-12-10T21:25:17 Set tv_idle time if a pool is not active when input from the menu.
Con Kolivas 70b62876 2012-12-09T23:58:54 Merge pull request #354 from kanoi/api minor unlikely zero pointer test
Kano 58a7226d 2012-12-10T18:42:32 minor unlikely zero pointer test
Con Kolivas c3fb1bce 2012-12-10T15:40:16 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.
Con Kolivas 1922e498 2012-12-10T11:03:50 Only stratum pools that are idle need to be kicked via cnx_needed.
Con Kolivas c5d9f3ac 2012-12-10T10:32:21 Only set the lagging flag for select_pool() on failed getwork if we're not in opt_fail_only mode.
Con Kolivas 383b42f2 2012-12-09T17:15:13 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.
Con Kolivas 8feb3029 2012-12-09T15:38:44 Avoid recursive locking of the stgd lock.
Con Kolivas c59aeb56 2012-12-09T15:29:06 Revert "Wake the getwork scheduler after every restart threads." This reverts commit 5b03e7497db5cc0cab7d2b788168c2d3f2b0fc87. Redundant.
Con Kolivas 31f75098 2012-12-09T15:28:30 Selectively discard all work items if a longpoll or stratum restart is received without a new block to work on.
Con Kolivas 5b03e749 2012-12-09T15:11:49 Wake the getwork scheduler after every restart threads.
Con Kolivas 01b9c6df 2012-12-09T08:22:13 Make main() the getwork scheduler once everything is set up, so that all app exits use the kill_work and quit paths.
Con Kolivas 30f6840b 2012-12-08T22:08:23 Only consider work stale for stratum of different job_id if it's not a share.
Con Kolivas 67a9af68 2012-12-08T21:53:06 Hash_pop should signal further waiters on its own pthread conditional in case there are multiple waiters.
Con Kolivas 5c4c2d67 2012-12-08T21:45:15 Check the job_id has not changed on stratum work when deciding if the work is stale as might occur across disconnections.
Con Kolivas fcb26532 2012-12-08T21:35:14 Perform pool_resus on getwork pool that generates work in getwork_thread.
Con Kolivas 3d1e9f50 2012-12-08T21:32:49 Set pool lagging message for getwork pool that falls to zero staged in getwork thread.
Con Kolivas 927730ae 2012-12-08T21:27:40 Stage extra work when the primary pool is a getwork pool without rolltime.
Con Kolivas 24de9b86 2012-12-08T21:23:33 Do not try to clean up twice if kill message is given.
Con Kolivas 84b44fd8 2012-12-08T21:21:19 Only recalculate total_staged in getwork thread if required.
Con Kolivas b2805551 2012-12-08T21:13:04 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.
Con Kolivas dd658182 2012-12-07T13:45:03 Remove all references to the now unused workio_cmd structure.
Con Kolivas ed1b5cae 2012-12-07T13:40:26 Remove the old workio command queue thread, replacing it with a kill conditional to exit the program.
Con Kolivas 59ddfd07 2012-12-07T13:32:23 Remove getwork command from workio_cmd queues and do them directly from queue_request.
Con Kolivas c99636f2 2012-12-07T13:21:46 Begin tearing down the old workio command queues by removing submit commands from there and submit them asynchronously via their own threads.
Con Kolivas c0cd006f 2012-12-04T21:49:11 Allow pool active to be called on stratum or disabled pools in the watchpool thread if the pool has not been probed.
Con Kolivas 52b4bae9 2012-12-04T21:29:49 Combine shared padding into one char.
Con Kolivas e14d1d6e 2012-12-04T00:18:10 Merge pull request #340 from kanoi/main lock the threaded statistics updates
Kano 120fc7af 2012-12-04T19:14:27 lock (most of) the threaded statistics updates
ckolivas b86aa20b 2012-12-04T11:06:35 Make need connection return true if a pool is idle.
Con Kolivas 777f0573 2012-12-03T04:19:17 Merge pull request #339 from kanoi/api API lock access to some summary statistics + API add Best Share to summary
Kano e55fe73f 2012-12-03T23:08:11 API add Best Share to summary
Con Kolivas c4b17ae9 2012-12-03T17:54:57 Check on creating new GBT work if the structures are up to date and update them as required rather than regularly.
Con Kolivas 401357e6 2012-12-03T16:45:43 Enable backup stratum connections for getwork when the primary pool doesn't have longpoll aka solo mining.
Con Kolivas 289d6807 2012-12-03T16:16:00 Check for correct absence of opt_fail_only in cnx_needed.
Con Kolivas 4b28c859 2012-12-03T15:28:52 Remove unused variable.
Con Kolivas f4d305a9 2012-12-03T15:26:58 The specification for stratum has been elaborated to say that a changed diff applies only to new work so do not retarget when submitting shares.
Con Kolivas 1ad671b0 2012-12-03T15:17:44 Use a variable length string array in submit_upstream_work to cope with massive GBT submissions.
Kano a67e96c3 2012-12-03T11:36:15 API lock access to some summary statistics (and copy them)
Con Kolivas fc5d3a0e 2012-12-03T09:52:46 Suspend stratum connections to backup pools when there is no requirement to potentially grab work from them.
Con Kolivas 9a716547 2012-12-02T12:46:01 Merge pull request #338 from denis2342/threadname small patch to add names to threads, should work for linux, freebsd and osx
Denis Ahrens 4fbdc1ea 2012-12-02T18:36:15 enumerate the mining threadnames
Kano 152e7e36 2012-12-02T21:48:37 mmq usb v0.4 + api usb stats
Denis Ahrens 271b05ab 2012-12-02T11:39:20 setting the name of the threads for linux,freebsd,openbsd and osx code is borrowed from bitcoins util.c, so it is already tested
Con Kolivas 4584068c 2012-12-02T20:51:21 Don't show broken WU value with scrypt mining.
Con Kolivas b8843546 2012-12-02T20:45:57 Remove unused getwork times in getswork.
Con Kolivas cc14f166 2012-12-02T19:29:54 Make gen_stratum_work more robust by using a dynamically allocated array for the header in case bogus data is sent by the pool to avoid overflowing a static array.
Con Kolivas f94cff77 2012-12-02T18:06:55 Microoptimise and remove redundant copy of strdup function in calloc_strcat.
Con Kolivas 53c9cdaf 2012-12-02T16:56:36 scrypt_diff now returns a uint64_t
Con Kolivas d8e18994 2012-12-01T23:36:17 Support monitoring and reporting much higher diffs for scrypt mining, truncating irrelevant zeroes from displayed hash.
Con Kolivas 0ae02c6e 2012-12-01T08:26:31 Since we will be using calloc_str to put a string into it, convert the function to calloc_strcat which does it automatically.
Con Kolivas 01eb807c 2012-11-29T13:00:02 Revert "Handle crash exceptions by trying to restart cgminer unless the --no-restart option is used." This reverts commit 68c881fde72f7aa92224cf4e4ba67a5af868dafc. Does not reliably restart on crashes often enough and makes debugging more difficult.
Con Kolivas bc4f6d92 2012-11-29T12:58:42 Count longpoll and GBT decodes as queued work since the count otherwise remains static.
Con Kolivas 1746e471 2012-11-29T12:49:28 Use the string helper functions to create gbt blocks of any length.
Con Kolivas 217be6ed 2012-11-25T00:37:46 Do away with the flaky free_work api in the driver code which would often lose the work data in opencl and simply flush it before exiting the opencl scanhash.
Con Kolivas c34ff367 2012-11-24T23:08:14 Use base_work for comparison just for cleanness in __copy_work
Con Kolivas 73671ab3 2012-11-24T18:45:02 Remove all static work structs, using the make and free functions.
Con Kolivas 3ab92ef6 2012-11-24T13:35:00 Add pool no. to stale share detected message.
Con Kolivas 850d07df 2012-11-24T12:58:58 Add info about which pool share became stale while resubmitting.
Con Kolivas 31e43944 2012-11-24T10:58:46 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.
Con Kolivas 2d35ac25 2012-11-24T10:47:20 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.
Con Kolivas aa72db36 2012-11-18T23:04:01 Provide rudimentary support for the balancing failover strategies with stratum and GBT by switching pools silently on getwork requests.
Con Kolivas 40a3331e 2012-11-18T22:27:03 Remove unintentional block of code in reuse_work.
Con Kolivas 9ad02fe3 2012-11-18T21:48:44 Support workid for block submission on GBT pools that use it.
Con Kolivas 61f4e9d6 2012-11-18T17:22:48 Revert "Discard all work on longpoll, not just work cgminer recognises as stale." This reverts commit 1470eea903266fc5cef8e722859dca55ae460183. Work block update makes this unnecessary.