summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
5 daysGeneralize the worker setup/runloop/teardown logic by adding a smol ot_worker helperDirk Engling
5 daysMake the dynamic accesslist readers release their line buffer and properly exitDirk Engling
5 daysRefactor ot_workqueue out of ot_mutex, no behaviour changeDirk Engling
5 daysMake the mainloop behave like every worker by claiming and releasing a socket being worked onDirk Engling
5 daysMake tcp worker multithreaded, tooDirk Engling
6 daysRefactor all tcp specific code into the ot_tcp module to prepare for multiple concurrent workersDirk Engling
6 daysAdd test for new config paramsDirk Engling
6 daysAdd config parsers for multiple tcp socket readers and a helper to see if we can offer it on the platformDirk Engling
6 daysIntroduce a fast path assuming that a tcp connection's payload already has arrived at accept timeDirk Engling
6 daysStart documenting design decisions and measurmentsDirk Engling
6 daysRemove references that you need libowfat to build opentrackerDirk Engling
6 daysgit ignore the poll flavor of the runner, tooDirk Engling
6 daysFix idle tests in presence of an accept filterDirk Engling
6 daysRemove stale xcode build fileDirk Engling
6 daysFix expiry tests under the new accept filtersDirk Engling
6 daysUse accept filter dataready instead of httpready on FreeBSDDirk Engling
6 daysDefer accepts until some data actually is thereDirk Engling
6 daysEnforce the invariant that each socket is only ever expected to be read from or written to, never bothDirk Engling
6 daysDon't treat a full send buffer as an error when sending http. Retry laterDirk Engling
7 daysReduce syscalls and add helper to count themDirk Engling
7 daysAdd an http load generatorDirk Engling
7 daysReduce number of per connection sys callsDirk Engling
7 daysCheck for free port in the udp integration test, also speed it up by a bitDirk Engling
7 daysConsolidate all tcp/http tear down into a single http_close function to prevent a rare UAF for expiring connectionsDirk Engling
8 daysBuild everything in one sweep, without intermediate object filesDirk Engling
8 daysadd wake-up tester that helped figuring out how to tickle hanging udp readersDirk Engling
8 daysRevert last wake-up experiment. Having each udp worker wake up once a second to check if the tracker stops is wastefulDirk Engling
8 daysFix a test that would over-report success rate when losing the race for cycles to the test targetDirk Engling
8 daysLivesync now also gets proper deinit codeDirk Engling
8 daysWith more workers blockingly waiting on udp sockets, we need to keep track of all sockets to shut them down on exitDirk Engling
8 daysDefault udp workers to 1, as it is the most sane choice everywhere, also reflect the new udp parallelism in the man pagesDirk Engling
8 daysLet the load tester log losses to better gauge performanceDirk Engling
8 daysAdd load tests to sanitize check the trackerlogic, based on udp requestsDirk Engling
8 daysPerformance improvement, where it works: Let different udp worker threads have their own socketDirk Engling
9 daysThe main event loop(s) now also catch an EINTR and return instead of blockingDirk Engling
9 daysAdd concurrency testDirk Engling
9 daysMake global torrent counter atomic and fix the setter and getterDirk Engling
9 daysPlug in the new per-thread stats counter, also make sure that the ot_clean sleep does not stall tracker exitDirk Engling
9 daysSecond half of moving the stat enum defines to trackerlogicDirk Engling
9 daysPrepare having each thread keep their own stats to avoid data racesDirk Engling
9 daysTurn malloc+memset into callocDirk Engling
9 daysSome more g_now_seconds occurrencesDirk Engling
9 daysForgot some g_now_seconds occurencesDirk Engling
9 daysAll OSes now do have a cheap monotonic clock, so no caching thread is needed. Also add some relative time helpersDirk Engling
9 daysWhile we're at it with the dynamic analyzers, add a tsanDirk Engling
10 daysAdd test for the revived keep aliveDirk Engling
10 daysFix some tests to match retired stats modes and wrong config file orderingDirk Engling
10 daysAdd test for the correct order of partial scrapesDirk Engling
10 daysAdd test for the error packet when a hash is blacklisted (the part I forgot in last commit)Dirk Engling
10 daysAdd test for the error packet when a hash is blacklistedDirk Engling