Con Kolivas
9d8e3df0a8
Add usb transfer cancellation on shutdown and documentation regarding where cancellable transfers are suitable.
2013-10-25 04:07:09 +11:00
Con Kolivas
d2feacdfb2
Cancel cancellable usb transfers on work restart messages.
2013-10-24 22:26:13 +11:00
Con Kolivas
b639e68870
Merge branch 'master' into hashfast
2013-10-24 21:19:29 +11:00
Con Kolivas
448f8dde80
Don't attempt to disable curses or print a summary during an app restart to prevent deadlocks.
2013-10-24 21:15:36 +11:00
Con Kolivas
81dfe60d36
Keep the libusb event handle polling thread active until there are no async usb transfers in progress.
2013-10-24 20:41:55 +11:00
Con Kolivas
5ea6a8eaa2
Merge branch 'master' into hashfast
...
Conflicts:
Makefile.am
2013-10-23 22:45:56 +11:00
Con Kolivas
e76421320e
Minor opencl build corrections.
2013-10-23 22:31:00 +11:00
Con Kolivas
273b04be62
Do the ntime binary modification to the work struct when submitting an ntime offset nonce within submit_noffset_nonce
2013-10-20 13:23:11 +11:00
Con Kolivas
572c8b9624
Do the ntime binary modification to the work struct when submitting an ntime offset nonce within submit_noffset_nonce
2013-10-20 13:22:14 +11:00
Roy Badami
c69a130dc1
Improvements to support for BitBurner boards
...
--bitburner-fury-options allows avalon-options to be overridden for
BitBurner Fury Boards, facilitating simultanous use of BitBurner XX
and BitBurner Fury boards
More sensible defaults for BitBurner boards, so cgminer should do something
sensible without any command line args
2013-10-19 18:42:20 +01:00
Con Kolivas
31e8ebaffa
Merge branch 'master' into hashfast
2013-10-19 16:08:17 +11:00
Con Kolivas
06776af000
Use the forcelog function on shutdown to cope with indeterminate console lock states due to killing of threads.
2013-10-18 23:34:55 +11:00
Con Kolivas
8e9f32a81b
Add a forcelog variant of applog which invalidates any console lock to force output.
2013-10-18 23:30:05 +11:00
Con Kolivas
f5baf9f57a
Merge branch 'master' into hashfast
...
Conflicts:
usbutils.h
2013-10-18 19:12:13 +11:00
ckolivas
680f014c85
Simplify queued hashtable by storing unqueued work separately in a single pointer.
2013-10-18 14:58:33 +11:00
ckolivas
40821d1f11
Use cgcompletion timeouts for the unreliable shutdown functions on kill_work.
2013-10-18 10:44:56 +11:00
Kano
c9adb1929c
allow __work_complete() access
2013-10-18 00:54:37 +11:00
Kano
514b3c424f
API add 'MHS %ds' to 'summary'
2013-10-17 20:24:09 +11:00
Kano
d3d3fc1316
Optional lock tracking and stats via the API
2013-10-17 20:24:02 +11:00
Con Kolivas
685c2acecd
Speed up polling repeat again in usb poll thread and handle async after the message to disable polling is complete.
2013-10-17 20:03:31 +11:00
Con Kolivas
bec75b61a6
Make the USB polling thread poll every second to potentially aid longer timeout transfers.
2013-10-17 08:28:57 +11:00
ckolivas
f821d0fbf3
Set device_diff on work in get_work to not be missed with drivers that use get_work directly.
2013-10-17 08:28:49 +11:00
Con Kolivas
9e287f9598
Merge pull request #499 from someone42/master
...
changes to bitburner driver for bitburner fury boards
2013-10-14 03:27:57 -07:00
Con Kolivas
e06e495ab8
Merge branch 'master' into hashfast
2013-10-14 15:07:32 +11:00
Con Kolivas
07837072f1
hexstr is too small in test_work_current
2013-10-14 12:12:01 +11:00
Con Kolivas
9b5c534911
Merge branch 'master' into hashfast
...
Conflicts:
api.c
configure.ac
miner.h
usbutils.c
usbutils.h
2013-10-13 16:41:53 +11:00
Con Kolivas
56edabc64d
Use a timeout with usb handle events set to a nominal 200ms and wait for the polling thread to shut down before deinitialising libusb.
2013-10-12 11:06:54 +11:00
Con Kolivas
9f8023a959
Use stack memory for hex used in stratum share submissions.
2013-10-12 10:34:07 +11:00
Con Kolivas
e0c90359fd
Use stack memory in test_work_current, avoiding a malloc/free cycle each time.
2013-10-12 09:56:48 +11:00
Con Kolivas
835ad82441
Convert the bitfury driver to use the hash_driver_work version of hash_work.
2013-10-12 09:32:07 +11:00
Con Kolivas
58008a3742
Add a hash_driver_work function to allow for drivers that wish to do their own work queueing and management.
2013-10-12 09:05:58 +11:00
Chris Chua
b509e84376
using separate identifier for bitburner fury boards
2013-10-11 21:14:59 +11:00
Con Kolivas
cda797d1be
Avoid calling get_statline_before on exit to avoid trying to use it on drivers in an indeterminate state.
2013-10-11 16:04:23 +11:00
Con Kolivas
d437de8428
Avoid calling get_statline on exit.
2013-10-11 15:58:29 +11:00
Con Kolivas
b5dfacef24
We are always dependent on libusb handling events so use the blocking libusb_handle_events in the polling thread and use a bool to know if we should continue polling.
2013-10-11 10:15:06 +11:00
Con Kolivas
853aa28ffc
Merge branch 'master' into async
...
Conflicts:
usbutils.c
2013-10-11 08:49:59 +11:00
Con Kolivas
2834eb8d6d
Kill off threads that have failed using hash_sole_work instead of just disabling them.
2013-10-08 23:35:22 +11:00
Con Kolivas
f80c900336
Merge branch 'master' into async
...
Conflicts:
api.c
cgminer.c
miner.h
usbutils.c
util.c
2013-10-08 20:46:36 +11:00
Con Kolivas
f8e28f251d
Try switching pools if for some reason we end up with only idle pools and have ended up current_pool set to an idle one.
2013-10-08 20:42:36 +11:00
Con Kolivas
3b527f14d0
Check a pool is stable for >5 mins before switching back to it.
2013-10-08 20:41:13 +11:00
Con Kolivas
7318eceef9
Make the devlock a cglock in usbutils and only grab the write lock for fundamental changes allowing us to send and receive transfers concurrently without lock contention.
2013-10-07 23:34:01 +11:00
Con Kolivas
8c0ea19e13
Submitting an ntime offset nonce needs to be done on a copy of the work instead of the original so abstract out shared components as much as possible, minimising strdups in copy_work and make submit_work_async work take copied work, cleaning up code in the process.
2013-10-07 23:33:13 +11:00
Con Kolivas
b6a97de687
Provide a way for drivers to submit work that it has internally rolled the ntime value by returning the amount it has ntime rolled to be added.
2013-10-07 23:33:13 +11:00
ckolivas
6cd7f0f1be
Remove unmaintained broken ztex driver.
2013-10-07 23:33:13 +11:00
Kano
51418f79e5
Klondike update code to current git
2013-10-07 23:33:11 +11:00
Con Kolivas
a6a9407067
Use asynchronous transfers for all bulk transfers, allowing us to use our own timers and cancelling transfers that take too long.
2013-10-07 23:31:20 +11:00
Con Kolivas
dbef95f77d
Submitting an ntime offset nonce needs to be done on a copy of the work instead of the original so abstract out shared components as much as possible, minimising strdups in copy_work and make submit_work_async work take copied work, cleaning up code in the process.
2013-10-05 09:31:36 +10:00
Con Kolivas
4c79252dc8
Provide a way for drivers to submit work that it has internally rolled the ntime value by returning the amount it has ntime rolled to be added.
2013-10-04 21:39:42 +10:00
ckolivas
052e434846
Remove unmaintained broken ztex driver.
2013-10-04 12:00:41 +10:00
Kano
dc85abd9cd
Klondike update code to current git
2013-10-03 23:19:18 +10:00
Con Kolivas
f49a3c7657
Merge branch 'master' into hashfast
...
Conflicts:
Makefile.am
api.c
cgminer.c
configure.ac
miner.h
usbutils.c
usbutils.h
2013-09-30 08:43:29 +10:00
Con Kolivas
5e1ebd5070
Deuglify use of _PARSE_COMMANDS macro expansions.
2013-09-29 13:54:16 +10:00
ckolivas
2ec601e123
There is no need to get the external prototypes for drivers in cgminer.c any more.
2013-09-28 16:00:55 +10:00
ckolivas
f3294f7424
Remove unnecessary gpu_threads initialisation.
2013-09-28 15:18:08 +10:00
ckolivas
6d7471237d
Use macro expansion to iterate over all device drivers without needing to explicitly code in support in all places. Pass a hotplug bool to the detect() function to prevent opencl trying to hogplug GPUs.
2013-09-28 15:11:06 +10:00
ckolivas
df54b76855
Add a noop function for driver detect when it's missing.
2013-09-28 13:52:13 +10:00
ckolivas
8875197466
Create a macro list of drivers to enable easier addition of further drivers.
2013-09-28 10:25:48 +10:00
Con Kolivas
7696f26a93
Abstract out work submission once it's been tested, to be used by drivers that do their own internal validity testing.
2013-09-26 21:18:33 +10:00
Con Kolivas
76e688aee1
Store the hash2 array in struct work for further reuse.
2013-09-26 21:14:14 +10:00
Con Kolivas
39c52b1fb4
Use the test_nonce function within submit_nonce and store the uint32 corresponding to hash2 37 for further use.
2013-09-26 20:58:47 +10:00
Con Kolivas
c1aba05506
Only set share diff if we've confirmed it's a share first.
2013-09-26 20:51:47 +10:00
Con Kolivas
9040cac924
restart_wait should return 0 if thr_restart is true.
2013-09-25 22:47:19 +10:00
Con Kolivas
759e82bb98
Add in first draft for a serialised work model sending/receiving data for BF1 devices.
2013-09-25 15:30:54 +10:00
Con Kolivas
2ab023f300
Add BF1 detection code to bitfury driver.
2013-09-24 21:55:47 +10:00
Kano
b1a3b012dd
pool_active uninitialised_var rolltime
2013-09-22 23:16:21 +10:00
Con Kolivas
118f9038a0
Merge branch 'master' into hashfast
2013-09-22 20:18:18 +10:00
Con Kolivas
466d3beca0
Provide a --disable-libcurl config option to build support for stratum mining only.
2013-09-21 22:49:28 +10:00
Con Kolivas
45c8d60790
Add crc initialisation tables and helper functions for hashfast driver.
2013-09-19 17:34:26 +10:00
Con Kolivas
b224ad37eb
Provide initial set up code and structure initialisation for hashfast device detection.
2013-09-19 12:34:00 +10:00
Con Kolivas
3777ed288d
Add hashfast detection driver calls to cgminer startup.
2013-09-19 10:46:23 +10:00
Con Kolivas
48681dd4bb
Reset quotas on load balance for all pools at the same time to avoid running out during selection and unintentionally dropping to fallback.
2013-09-16 12:40:11 +10:00
Con Kolivas
972d04d2a8
Break out of select pool from a common point for appropriate debug messages and to avoid further tests.
2013-09-16 12:26:01 +10:00
Con Kolivas
a76b09e4fc
Find the greatest common denominator in quotas and use the smallest number of consecutive work items per pool in quota load balance mode to smooth hashrate across pools with large quotas. Give excess quota to priority pool 0 instead of pool 0.
2013-09-13 13:51:15 +10:00
Con Kolivas
8ac4fa202d
Merge branch 'master' into quota
2013-09-13 13:05:47 +10:00
Con Kolivas
d4ac1915fa
Avoid dynamically adding stack memory for nonce2 in the stratum send thread and check the pool's nonce2_len will not cause an overflow.
2013-09-13 09:34:45 +10:00
Con Kolivas
9cde575969
Merge branch 'master' into quota
2013-09-08 19:54:35 +10:00
Con Kolivas
89c07fa5c7
Add support for socks4/4a proxies with stratum, and drop back to socks4 support via the global --socks-proxy command to not break previous configurations.
2013-09-08 16:32:44 +10:00
Con Kolivas
a41660f2f0
Only show long-poll message in pool summary if it's not using stratum.
2013-09-08 10:30:18 +10:00
Con Kolivas
5b378f443a
Increase the time for the waiting for work message to be given to be greater than that required for a pool swap in the scheduler which is set to 5s.
2013-09-08 10:30:08 +10:00
Con Kolivas
812f7541fd
Change message in status when using a balanced pool strategy to notify if there's a stratum pool as well.
2013-09-08 10:29:58 +10:00
Con Kolivas
26a8a8e2c6
Use the --failover-only flag to have special meaning in combination with load-balance mode to distribute any unused quota back to pool 0 to maintain ratios amongst other pools.
2013-09-08 10:09:26 +10:00
Con Kolivas
c325e7ae45
Only show long-poll message in pool summary if it's not using stratum.
2013-09-07 19:02:38 +10:00
Con Kolivas
7d2c31e28a
Display quota and allow it to be modified via the pool menu.
2013-09-07 19:01:13 +10:00
Con Kolivas
e8a1c9ebd1
Increase the time for the waiting for work message to be given to be greater than that required for a pool swap in the scheduler which is set to 5s.
2013-09-07 15:41:07 +10:00
Con Kolivas
ea4a1ff98f
Change message in status when using a balanced pool strategy to notify if there's a stratum pool as well.
2013-09-07 15:36:48 +10:00
Con Kolivas
77b3b185b2
Add quota support to configuration files.
2013-09-07 15:29:18 +10:00
Con Kolivas
ea7b2a7da3
Rotate pools on all failures to set a pool in select_pool.
2013-09-07 12:14:16 +10:00
Con Kolivas
7c19984fd6
Use quotas for load-balance pool strategy.
2013-09-07 12:12:24 +10:00
Con Kolivas
0121b75a4e
Provide a mechanism for setting a pool quota to be used by load-balance.
2013-09-07 11:33:07 +10:00
Con Kolivas
770556cdec
Use the --socks-proxy option with stratum, changing it to defaulting to socks5 and give appropriate message should it fail to connect.
2013-09-07 09:39:03 +10:00
Con Kolivas
8ede407df7
Make extract_sockaddr set variables passed to it rather than pool struct members.
2013-09-05 23:10:19 +10:00
Con Kolivas
5bf9856a4a
take_queued_work_bymidstate should use a write lock.
2013-09-03 11:38:58 +10:00
Kano
76185ede38
API mcast add a description option with miner.php
2013-09-01 00:23:26 +10:00
Con Kolivas
1d5d28d7fb
Skip dissecting opt->names in parse_config if it doesn't exist.
2013-08-31 21:36:15 +10:00
ckolivas
0f42fd3f46
Remove unused HAVE_LISBUSB macro and use USE_USBUTILS everywhere.
2013-08-30 15:38:35 +10:00
Con Kolivas
572df10207
Provide a funcion that looks up queued work by midstate and then removes it from the device hash database.
2013-08-27 20:29:47 +10:00
Con Kolivas
ab917082fc
Only count submitted nonces as diff1shares if they're valid.
2013-08-25 10:53:06 +10:00
Kano
febcc53d99
Update the API Multicast documentation
2013-08-23 16:34:42 +10:00
Kano
14ac6fa5ab
Initial API Multicast response v0.1 to find cgminer APIs
2013-08-22 21:31:32 +10:00
Con Kolivas
b9aa5b6528
Check for cnx_needed on each loop through wait_lp_current.
2013-08-21 20:31:10 +10:00