summaryrefslogtreecommitdiffstats
path: root/src/fuse
Commit message (Collapse)AuthorAgeFilesLines
* [FUSE] Fix termination condition for reading host listSimon Rettberg2023-02-141-1/+1
|
* [FUSE] Make initial connect entirely parallel wrt serversSimon Rettberg2023-02-121-111/+232
| | | | | | | | | | | | Previously, we only did the actual socket connect in a concurrent matter. Once a connection was successfully established, we did a blocking handshake on the protocol level. If the server war particularly slow, this was bad as we would not try other servers until after this. Throw out the previous non-blocking async connect logic, switching to a multi-threaded approach, that spawns one thread per host/ip, offset by 200ms, until one of the attempts succeeds.
* [FUSE] Fix AIOOB accessSimon Rettberg2023-02-121-2/+1Star
|
* [FUSE] Adapt to changed macro namesSimon Rettberg2022-05-201-4/+4
|
* [BUILD] Add check for stdatomic.h supportManuel Bentele2021-06-161-0/+4
|
* [BUILD] Add support in CMake to validate (lint) the source codeManuel Bentele2021-03-041-3/+10
|
* [FUSE] Fix build: Add dnbd3-build to dependenciesSimon Rettberg2020-12-081-1/+1
|
* [BUILD] Include branch and build timestamp in binariesSimon Rettberg2020-12-021-1/+3
|
* [FUSE] removed unnecessary cmdln argument check for sticky modeManuel Bentele2020-10-301-6/+0Star
|
* [BUILD] add build options to enable/disable build of dnbd3 componentsManuel Bentele2020-10-301-0/+2
|
* [CLIENT] add feature to ignore propagated alternative servers (sticky mode)Manuel Bentele2020-10-291-0/+6
|
* [BUILD] remove the build requirement for an unused C++ compilerManuel Bentele2020-10-271-1/+2
| | | | | This patch sets the programming languages of each CMake project to C. With this change, CMake does not search for an unused C++ compiler anymore.
* [BUILD] add CMake targets to build binary and source packages with CPackManuel Bentele2020-10-222-2/+3
| | | | | | | | | | | This patch adds the following CMake targets - package - source to build bundeled packages. Those packages contain either all built binary artifacts or all source files for source code distribution. Both CMake targets are available in Release build configuration.
* [BUILD] add option to build the dnbd3-server with afl-fuzz supportManuel Bentele2020-10-201-0/+2
| | | | | The afl-fuzz support for the dnbd3-server requires an AFL C compiler like afl-gcc and can be enabled with the CMake option DNBD3_SERVER_AFL.
* [BUILD] set build type and stop Release build if repository is dirtyManuel Bentele2020-10-191-1/+1
|
* [BUILD] fixes issues to build user space programs on FreeBSD 12.1Manuel Bentele2020-10-192-1/+2
|
* [BUILD] rewrite CMake build system to track changes of source filesManuel Bentele2020-10-166-17/+28
| | | | | | | | | | This change restructures the source code directories, separates shared form non-shared application code and adds CMake dependencies. These dependencies allow the tracking of changes and trigger a rebuild of those build targets where changed files are involved. WARNING: Note that the support of the DNBD3_SERVER_AFL build option is not supported yet. Thus, the option should be never turned on.
* [FUSE] Tweak timeout values to prevent stale status fileSimon Rettberg2020-07-241-3/+3
| | | | | | | If we cat the stats file right after starting the fuse client, its contents will be cached forever. The exact cause is unknown, since the timeout was specified as one second, but setting it to 0 seems to fix this issue.
* [FUSE] Fix returning pending request on RTT measurementSimon Rettberg2020-07-243-15/+8Star
|
* [FUSE] CleanupSimon Rettberg2020-07-242-33/+24Star
|
* [FUSE] Detach old receive thread when creating anew one, update varSimon Rettberg2020-07-241-2/+2
|
* [FUSE] Refactor signal handling on termination againSimon Rettberg2020-07-243-60/+55Star
|
* [FUSE] Fix inode numbersSimon Rettberg2020-07-241-14/+16
|
* [FUSE] Minor cleanup and fixesSimon Rettberg2020-07-211-59/+38Star
|
* [FUSE] Properly signal worker threads to exit on shutdownSimon Rettberg2020-07-213-24/+70
| | | | | | Our main signal handler sends SUGHUP to the receiver and background threads, so if they block in some recv() or poll() they will get EINTR and can check keepRunning.
* [FUSE] FormattingSimon Rettberg2020-07-215-180/+183
|
* [FUSE] Fix a bunch of warningsSimon Rettberg2020-07-212-8/+11
|
* leak fix in mainln-tech2020-01-123-5/+12
|
* fixed code: removed useless splicing, code optimization, commandline ↵ln-tech2020-01-084-113/+31Star
| | | | arguments fixed, auto_cache in lowlevel activated, multi and single threaded modes are supported now
* code fixes, keepRunning is back, threads seem to be safeln-tech2019-11-153-31/+18Star
|
* SIGINT fix, Reader-Writer oroblem fixln-tech2019-11-134-36/+43
|
* cleaned codeln-tech2019-10-273-176/+19Star
|
* cleaned code and atomic_ints againstln-tech2019-10-274-67/+401
|
* [FUSE] Increase socket timeout from 1 to 3 secondsSimon Rettberg2019-08-281-2/+2
|
* [FUSE] Add --sticky mode to ignore alt-servers announced by serversSimon Rettberg2019-03-073-6/+16
|
* [FUSE] Clean up argument handling, improve helpSimon Rettberg2019-03-071-19/+10Star
|
* [FUSE] Use shared/timing.* instead of nowMilli/MicroSimon Rettberg2019-02-092-57/+43Star
|
* [FUSE] Consider RTT of active connection for switch-decisionsSimon Rettberg2019-02-082-55/+123
|
* [FUSE] In panic mode, use a pending range for alt checkSimon Rettberg2018-07-051-5/+43
| | | | | | | | If we lost connection and then go check all known alt servers, see if we have some pending request queued and if so, use its offset and length for the alt server probe. This ensures that the server being tested is able to satisfy at least the next request we'll send.
* [FUSE] Return 0 instead of EIO if trying to read past endSimon Rettberg2018-06-131-1/+1
| | | | | read() calls are supposed to return 0 when reading at EOF, so properly mimic that behavior.
* [FUSE] Move variables into block where they're being usedSimon Rettberg2018-06-131-4/+4
|
* [SERVER] Option to disable timestamps on stdout/console (default: disabled)Simon Rettberg2018-04-111-0/+1
|
* [FUSE] Split final multiConnect-wait across multiple callsSimon Rettberg2017-11-071-8/+8
| | | | | | There might be more than one pending connect, but each call to multiConnect() can return at most one fd, so we could be ignoring some successful connections.
* [FUSE] Reset salen before getpeername() callSimon Rettberg2017-11-071-1/+2
|
* [FUSE] Make use of sock_multiConnect() for initial connectionSimon Rettberg2017-11-061-10/+36
| | | | | | This speeds up initialization with a long list of servers where the first in the list don't work, as the delay between servers is now lowered to 100ms.
* [FUSE] Remember up to 16 alt servers, but work only with 5Simon Rettberg2017-11-041-8/+59
| | | | | | | 5 servers are considered "active", that is, are being measured for their RTT regularly. If We have more than 5 servers and one of the active ones isn't reachable repeatedly, the two servers will swap position.
* [FUSE] Fix printf warning for logadd callSimon Rettberg2017-11-021-1/+1
|
* [FUSE] Improve log messages a bitSimon Rettberg2017-11-011-2/+5
|
* [*] Mark logadd() as printf-style function, fix errors that it revealedSimon Rettberg2017-10-311-2/+2
| | | | ...there were quite a few format string errors as it turns out :/
* [*] Introduce constants for IPv4/6 in dnbd3_host_tSimon Rettberg2017-10-281-2/+2
| | | | | | | AF_INET luckily was "2" on all platforms checked, so no problems there with interoperation, but AF_INET6 is different between Linux, BSD, Windows and possibly others, so map back and forth between AF_INET/AF_INET6 and HOST_IP4/HOST_IP6 to fix this.