|
9c648c17
|
2012-07-11T20:10:52
|
|
Bugfix: Calculate nsec in nmsleep correctly
The old algorithm (msecs * 1000000) - (sec / 1000000000) gets total nsec,
including seconds, since the sec/1e9 should be multiplying. It's also
vulnerable to easy overflows. Using ldiv gets the quotient and remainder
in a single operation (at least on x86) and avoids overflow.
|
|
bc0b1406
|
2012-07-08T21:35:19
|
|
Cope with signals interrupting the nanosleep of nmsleep.
|
|
3271be14
|
2012-07-06T15:01:39
|
|
Provide a ms based sleep function that uses nanosleep to avoid the inaccuracy of usleep on SMP systems.
|
|
1a43f795
|
2012-07-01T12:02:10
|
|
Mingw doesn't support asprintf, use sprintf.
|
|
1e942147
|
2012-07-01T10:44:23
|
|
Timersub is supported on all build platforms so do away with custom timerval_subtract function.
|
|
75ea6164
|
2012-07-01T10:35:08
|
|
Minor style police on util.c
|
|
8f954d40
|
2012-07-01T10:17:12
|
|
Get rid of unused result warning with asprintf.
|
|
3267b534
|
2012-06-28T10:43:52
|
|
Implement rudimentary X-Mining-Hashrate support.
|
|
c5a21fab
|
2012-06-23T23:43:22
|
|
Extend nrolltime to support the expiry= parameter. Do this by turning the rolltime bool into an integer set to the expiry time. If the pool supports rolltime but not expiry= then set the expiry time to the standard scantime.
|
|
268039cc
|
2012-04-28T00:32:47
|
|
Indentation clean up.
|
|
eda38299
|
2012-04-27T11:58:47
|
|
Create one longpoll thread per pool, using backup pools for those pools that don't have longpoll.
Use the work created from the longpoll return only if we don't have failover-enabled, and only flag the work as a longpoll if it is the current pool.
This will work around the problem of trying to restart the single longpoll thread on pool changes that was leading to race conditions.
It will also have less work restarts from the multiple longpolls received from different pools.
|
|
9609dbc4
|
2012-04-20T21:09:37
|
|
Set lp_path to NULL after free for consistency.
|
|
17b9baa9
|
2012-04-20T03:36:42
|
|
Removing dmalloc import left behind by mistake
|
|
44bcb69c
|
2012-04-19T14:45:40
|
|
Fixing leak in resp_hdr_cb
Memory is allocated for key and val, and longpoll address, when found, is stored in the header_info and prevented from being freed there. This pointer is stored during pool probing but once that's done it was just being lost.
Not so visible but also leaking was the refuse reason string.
|
|
ed8382c8
|
2012-03-12T14:56:05
|
|
Make curses TUI support optional at compile-time.
|
|
d1cddf8b
|
2012-02-21T22:23:07
|
|
Update licensing to GPL V3.
|
|
f4284a21
|
2012-02-21T09:20:31
|
|
Set the lp_sent variable under lock since there will almost always be a race on setting this variable, potentially leading to multiple LPs being sent
out.
|
|
fe4b5e1f
|
2012-02-20T08:24:41
|
|
Set the lp_sent bool earlier to minimise the number of extra longpolls sent out.
|
|
39906718
|
2012-02-19T22:07:31
|
|
Keep track of when a longpoll has been sent for a pool and if the current pool is requesting work but has not sent a longpoll request, convert one of
the work items to a longpoll as we may have switched pools but still be using the longpoll from the previous pool.
|
|
810ad045
|
2012-02-18T23:16:08
|
|
More copyright updates.
|
|
be9db9ce
|
2012-02-18T23:00:21
|
|
Copyright updates.
|
|
06721957
|
2012-02-18T16:34:06
|
|
Freeze the queues on all threads that are sent the pause message to prevent them trying to start up again with saved pings in their queues.
|
|
3d3a3a2f
|
2012-02-15T21:42:12
|
|
Fix unused warnings on win32.
|
|
9631c0b0
|
2012-02-13T21:46:14
|
|
Fix initialization warning with jansson 1.3
|
|
56907db2
|
2012-02-12T18:21:30
|
|
Fix harmless warnings with -Wsign-compare to allow cgminer to build with -W.
|
|
11123848
|
2012-02-12T17:53:50
|
|
Fix missing field initialisers warnings.
|
|
07c2ee53
|
2012-02-12T17:00:44
|
|
Put win32 equivalents of nanosleep and sleep into compat.h fixing sleep() for adl.c.
|
|
e0fec357
|
2012-02-11T19:31:34
|
|
modularized logging, support for priority based logging
Functions related to logging are extracted into dedicated source files
for better maintainability.
The existing low-level logging API is extended with a generalized scheme
providing log functions log_{error, warning, notice, info, debug} that
log messages based on a global opt_log_level.
opt_log_level for now is set to LOG_NOTICE and might be modified via
command line options or config files in future releases.
|
|
405a2120
|
2012-02-11T20:11:18
|
|
Remove unnecessary check for opt_debug on every invocation of applog at LOG_DEBUG and place the check in applog().
|
|
b706da93
|
2012-02-11T14:55:12
|
|
Merge branch 'reject_reason' of https://github.com/luke-jr/cgminer into reject
|
|
5b476100
|
2012-02-09T21:54:23
|
|
Move from the thread safe localtime_r to regular localtime which is the only one supported on newer pthread libraries on mingw32 to make it compile with
the newer ming. Thread safety is of no importance where localtime is used in this code.
|
|
f7a9897e
|
2012-01-26T00:07:42
|
|
Display X-Reject-Reason, when provided
|
|
de4c6c29
|
2012-02-06T18:12:22
|
|
Provide support for the submitold extension on a per-pool basis based on the value being detected in a longpoll.
|
|
e57ac017
|
2012-02-05T22:43:42
|
|
Remove unused get_dondata function.
|
|
36d2fa48
|
2012-02-05T22:39:28
|
|
Silence unused parameter warnings.
|
|
13fa5772
|
2012-02-04T20:04:49
|
|
Probe but don't set the timeout to 15 seconds as some networks take a long time to timeout.
|
|
1832b20c
|
2012-02-04T20:04:07
|
|
Revert "Some networks can take a long time to resolve so go back to 60 second timeouts instead of 15."
This reverts commit c86a670ce6d264fba10a38f68d65e4b4ab27cba6.
This changed more than just the timeout.
|
|
c86a670c
|
2012-02-04T13:06:04
|
|
Some networks can take a long time to resolve so go back to 60 second timeouts instead of 15.
|
|
bdec295f
|
2012-01-30T17:58:22
|
|
Set the latest network access time on share submission for --net-delay even if we're not delaying that submission for further network access.
|
|
b188157c
|
2012-01-30T16:43:14
|
|
Resume advertising midstate support
|
|
3de7c7f9
|
2012-01-30T15:51:46
|
|
Stop advertising midstate support until it's fixed.
|
|
09184720
|
2012-01-30T15:09:58
|
|
As share submission is usually staggered, and delays can be costly, submit shares without delay even when --net-delay is enabled.
|
|
82af288e
|
2012-01-29T22:57:29
|
|
Revert "Fix various harmless warnings."
This reverts commit a4b67f030fc0c7e2b18e79114a441c1e1617d5f8.
|
|
a4b67f03
|
2012-01-29T21:06:17
|
|
Fix various harmless warnings.
|
|
fe88648e
|
2012-01-24T18:10:38
|
|
Advertise longpoll support in X-Mining-Extensions
|
|
6442c1ab
|
2012-01-22T20:36:57
|
|
Style police.
|
|
21633b9b
|
2012-01-21T15:12:45
|
|
Bringing back TCP_NODELAY, but also ensuring it doesn't conflict with
--net-delay : Nagle's may infact delay some packets longer than
necessary..
|
|
e15d57d7
|
2012-01-22T09:36:21
|
|
Implement socks4 proxy support.
|
|
5179d224
|
2012-01-20T15:36:42
|
|
Introduce a --net-delay option which guarantees at least 250ms between any networking requests to not overload slow routers.
|
|
ebe21db3
|
2012-01-17T22:05:20
|
|
Advertise that we can make our own midstate, so the pool can skip generating it for us
|
|
4cf433c9
|
2012-01-17T16:21:08
|
|
Remove TCP_NODELAY from curl options as many small packets may be contributing to network overload.
|
|
638c8c52
|
2012-01-01T14:21:22
|
|
Make curl use a fresh connection if the json rpc call fails for any reason in case curl is relying on dead persistent connections.
|
|
19e373b8
|
2011-12-30T11:31:16
|
|
All threads are detached so there is no need to join them and it may dereference causing crash on exit.
|
|
5033dcd3
|
2011-12-27T18:33:49
|
|
fix test/set of thr->pth to also work in windows
|
|
2257b502
|
2011-12-27T11:37:30
|
|
Simplify longpoll changeover to just check which pool it should grab its next longpoll from. This should prevent locking hangs and thread cancellation
crashes.
|
|
a51514d9
|
2011-12-27T10:30:04
|
|
White space cleanup.
|
|
b69aa234
|
2011-12-26T10:49:27
|
|
Use control_lock to protect thr->pth for thread creation/destruction.
|
|
59293a37
|
2011-12-26T09:29:16
|
|
Only pthread_join when pthread_cancel does not return an error.
|
|
13c40f75
|
2011-12-25T00:06:25
|
|
Zero all pthread_t identities upon cancelling threads.
|
|
689f8abb
|
2011-10-09T12:33:54
|
|
Try to use SSL if the server supports it.
|
|
4128b954
|
2011-09-26T18:49:15
|
|
Add a --donation feature which reads a url/userpass from the author's site and contributes a percentage of getworks to the author, but default to off.
|
|
ba14a670
|
2011-09-21T21:45:24
|
|
Remove EOL spaces from stderr and curses
|
|
8ecd15a6
|
2011-09-20T16:19:21
|
|
Add BLOCK! notification and remove end of line blanks when not needed
|
|
b8ea0dd1
|
2011-09-17T13:23:58
|
|
Update curses logging to allow LOG_WARNING and LOG_ERR messages to still go through while within the menu, and drop share message to LOG_NOTICE.
|
|
8e2becc1
|
2011-09-15T11:45:24
|
|
Change pth from being a pointer as we can dereference if we're unlucky on stopping longpoll.
|
|
833e020d
|
2011-09-15T10:33:23
|
|
Standardise the way all non-mining threads are destroyed to make sure we can safely cancel them, freeing ram and NULLifying pointers.
|
|
1f15d7ea
|
2011-09-09T17:52:21
|
|
Advertise rollntime extension support
Thanks to raijin for testing!
|
|
a0a5858d
|
2011-09-06T12:00:40
|
|
Use the presence of X-Roll-Ntime in the header as a bool for exists unless N is found in the response.
|
|
5d845f2f
|
2011-09-02T10:13:33
|
|
If curl does not have sockopts, do not try to compile the json_rpc_call_sockopt_cb function, making it possible to build against older curl libraries.
|
|
a593afdb
|
2011-08-31T13:23:36
|
|
Use the curses_lock to protect the curses_active variable and test it under lock.
|
|
437d6f05
|
2011-08-26T13:32:41
|
|
Disable curl debugging with opt protocol since it spews to stderr.
|
|
91a2e701
|
2011-08-26T12:12:54
|
|
Actually check the value returned for the x-roll-ntime extension to make sure it isn't saying N.
|
|
666fcc3f
|
2011-08-24T08:06:15
|
|
Move staged threads to hashes so we can sort them by time.
|
|
dfec430c
|
2011-08-22T08:04:30
|
|
Make the tcp setsockopts unique to linux in the hope it allows freebsd et. al to compile.
|
|
d89a6c57
|
2011-08-18T21:35:05
|
|
Since we check roll time per work item now, it need only be debug log level.
|
|
3edc1dfe
|
2011-08-17T22:33:46
|
|
Test at appropriate target difficulty now.
|
|
1e77f044
|
2011-08-17T12:43:39
|
|
Clean up the longpoll management to ensure the right paths go to the right pool and display whether we're connected to LP or not in the status line.
|
|
426f72de
|
2011-08-16T10:27:19
|
|
As we have keepalives now, blaming network flakiness on timeouts appears to have been wrong.
Set a timeout for longpoll to 1 hour, and most other network connectivity to 1 minute.
|
|
657812ad
|
2011-08-16T10:15:47
|
|
Probe for slightly longer for when network conditions are lagging.
|
|
d6dd5d70
|
2011-08-14T01:54:47
|
|
Test each work item to see if it can be rolled instead of per-pool and roll whenever possible, adhering to the 60 second timeout.
|
|
5f667e7e
|
2011-07-30T13:36:08
|
|
Get rid of extra line feeds.
|
|
53e05c64
|
2011-07-28T19:55:54
|
|
Log to the output file at any time with warnings and errors, instead of just when verbose mode is on.
|
|
0006eb2d
|
2011-07-28T10:36:48
|
|
Make the "quiet" mode still update the status and display errors, and add a new --real-quiet option which disables all output and can be set once while running.
|
|
e82e3902
|
2011-07-27T16:40:52
|
|
If work has been cloned it is already at the head of the list and when being reinserted into the queue it should be placed back at the head of the list.
|
|
98f609b5
|
2011-07-27T10:31:44
|
|
Sanity check to prove locking.
|
|
a187fe1e
|
2011-07-25T13:00:44
|
|
Try to do every curses manipulation under the curses lock.
|
|
5f54e164
|
2011-07-25T10:58:32
|
|
Only use the sockoptfunction if the version of curl is recent enough.
|
|
40198313
|
2011-07-24T17:34:57
|
|
Do away with GET for dealing with longpoll forever. POST is the one that works everywhere, not the other way around.
|
|
0c25ff84
|
2011-07-23T17:11:16
|
|
OSX: fix setsockopt compile bug
|
|
d37c3fe5
|
2011-07-22T23:43:26
|
|
Win32 threading and longpoll keepalive fixes.
|
|
fe8b0416
|
2011-07-22T12:22:55
|
|
Make --no-longpoll work again.
|
|
b0a8f279
|
2011-07-22T11:46:26
|
|
Implement the ability to live add, enable, disable, and switch to pools.
|
|
d987006c
|
2011-07-20T23:48:06
|
|
TCP KEEPALIVE support for long polling.
|
|
b56ed748
|
2011-07-19T23:06:11
|
|
When json rpc errors occur they occur in spits and starts, so trying to limit them with the comms error bool doesn't stop a flood of them appearing. Make the json errors LOG_INFO level instead so they don't normally show up.
|
|
81ff7fb3
|
2011-07-19T13:01:08
|
|
Explicitly probe each pool to see if work can be retrieved from it and what it supports.
|
|
913e1202
|
2011-07-19T12:29:33
|
|
Test for rolltime and save it correctly when testing for longpoll.
|
|
0ce3df10
|
2011-07-19T11:45:58
|
|
Store whether each server supports X-Roll-Ntime or not.
|
|
321c4798
|
2011-07-19T10:53:04
|
|
Make longpoll switch servers should it not match the current pool.
|
|
cdc72dae
|
2011-07-19T09:26:23
|
|
Some servers regularly return empty responses. Drop the message from ERR to INFO.
|
|
44c975be
|
2011-07-19T01:39:22
|
|
Long timeouts are causing reset connections and longpoll can recover if the connection needs to be restarted, so remove the timeout settings.
|