summaryrefslogtreecommitdiffstats
path: root/src/server
Commit message (Collapse)AuthorAgeFilesLines
* [SERVER] Log errno if opening image file failsSimon Rettberg2023-06-301-3/+5
|
* [SERVER] Threadpool: Add active thread count to error messageSimon Rettberg2023-06-141-1/+1
|
* [SERVER] Don't establish uplink when loading image on startupSimon Rettberg2022-09-131-1/+1
| | | | | | | Bringing up a proxy that has been offline for some time will trigger lots of loads and replication on other proxies when booting up again. Just wait until a client actually needs an image before establishing an uplink connection.
* [BUILD] Add check for stdatomic.h supportManuel Bentele2021-06-161-0/+1
|
* [SERVER] Add minRequestSize: Enlarge relayed requestsSimon Rettberg2021-05-113-16/+48
| | | | | | | | | | Any request from a client being relayed to an uplink server will have its size extended to this value. It will also be applied to background replication requests, if the BGR mode is FULL. As request coalescing is currently very primitive, this setting should usually be left diabled, and bgrWindowSize used instead, if appropriate. If you enable this, set it to something large (1M+), or it might have adverse effects.
* [SERVER] Fix UBSimon Rettberg2021-05-111-1/+1
|
* [SERVER] Honor uplinkTimeout directly when connecting to alt-serverSimon Rettberg2021-05-102-5/+3Star
|
* [KERNEL] Improve debug output in net.cSimon Rettberg2021-04-201-0/+1
|
* [KERNEL] Removes duplicate word 'of' in license headersManuel Bentele2021-04-164-4/+4
|
* [SERVER] Mark uplink requests with BGR/prefetch flags and handle themSimon Rettberg2021-04-141-5/+20
| | | | | | | | | Incoming requests from clients might actually be prefetch jobs from another downstream proxy. Don't do prefetching for those, as this would cascade upwars in the proxy chain (prefetch for a prefetch of a prefetch) Incoming requests might also be background replication. Don't relay those if we're not configured for background replication as well.
* [SERVER] Make prefetching synchronousSimon Rettberg2021-04-143-168/+226
| | | | | | | | | There is a race condition where we process the next request from the same client faster than the OS will schedule the async prefetch job, rendering it a NOOP in the best case (request ranges match) or fetching redundant data from the upstream server (prefetch range is larger than actual request by client). Make prefetching synchronous to prevent this race condition.
* [SERVER] Fix compiler warningSimon Rettberg2021-03-221-1/+1
|
* [BUILD] Build picohttpparser as independent libraryManuel Bentele2021-03-113-15/+15
|
* [BUILD] Disable lint/formatting for non-kernel for nowSimon Rettberg2021-03-051-0/+12
|
* [BUILD] Add support in CMake to validate (lint) the source codeManuel Bentele2021-03-041-17/+40
|
* [BUILD] Include branch and build timestamp in binariesSimon Rettberg2020-12-022-4/+6
|
* [SERVER] replaced non-existent FUSE define to match CMake's build definesManuel Bentele2020-11-271-3/+3
|
* [SERVER] Fix warningsSimon Rettberg2020-11-234-7/+9
|
* [BUILD] update search paths for 'libatomic' to support build on FreeBSDManuel Bentele2020-11-231-1/+1
|
* [BUILD] add CMake find package search to find 'libatomic' automaticallyManuel Bentele2020-11-231-0/+3
|
* [BUILD] add support for atomic operations not supported by hardwareManuel Bentele2020-11-201-1/+1
| | | | | | | | | | | | | | This change links the dnbd3-server with 'libatomic' to add support for atomic operations not supported by hardware (especially 32-bit hardware architectures, such as ARM). Thus the dnbd3-server can also run on a Raspberry Pi 1 running Rasperry Pi OS. Note that the dnbd3-server is still linked to the libatomic, even if the hardware supports atomic operations. In this case, the compiler resolves atomic operations and replaces them automatically with specific built-in functions. This unnecessary linkage can be removed in the future if the GCC supports an upcoming option called automatic linking of libatomic (--enable-autolink-libatomic).
* [SERVER] Fix log calls in thread debug codeSimon Rettberg2020-11-131-5/+7
|
* cmake: Fix passing -Defines to ccSimon Rettberg2020-11-131-3/+3
|
* [BUILD] add build options to enable/disable build of dnbd3 componentsManuel Bentele2020-10-301-0/+1
|
* [SERVER] Update nextSave timestamp at start of functionSimon Rettberg2020-10-291-4/+6
| | | | | | | | | saveLoadAllCacheMaps() is called frequently, and a 'full' run can take some time. If we only update the nextSave timestamp when we're done, we might already have a concurrent call to the function, which will also do a 'full' run, since the timestamp is not updated yet. This doesn't break anything, but leads to even more disk activity, which is probably already high, given that the previous run is not done yet.
* [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-223-8/+11
| | | | | | | | | | | 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-202-5/+30
| | | | | 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-193-10/+7Star
|
* [BUILD] rewrite CMake build system to track changes of source filesManuel Bentele2020-10-1618-63/+124
| | | | | | | | | | 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.
* [SERVER] Fix rid 0 proxy lookup if local version is newerSimon Rettberg2020-08-141-5/+15
| | | | | There was a logic bug that would favor a remotely looked up image rid, even if we already found a higher revision locally.
* [SERVER] FUSE: Set name for fuse theadsSimon Rettberg2020-07-311-0/+2
|
* [SERVER] FUSE: Use splice with move for local readsSimon Rettberg2020-07-311-2/+16
| | | | | | Greatly improves performance when reading from the local disk cache, and additionally avoids having everything in the fs cache twice (disk view and fuse view).
* [SERVER] FUSE: Fix arguments to fuseSimon Rettberg2020-07-302-2/+3
|
* [SERVER] Remove dead codeSimon Rettberg2020-07-301-6/+0Star
|
* [SERVER] Fix: Missing argument to fprintf()Simon Rettberg2020-07-301-1/+1
|
* [SERVER] Inline imageLookup/Open since we use fuse_mtSimon Rettberg2020-07-301-56/+34Star
|
* [SERVER] FUSE: Add readdir for /Simon Rettberg2020-07-301-1/+40
|
* [SERVER] Add FUSE modeSimon Rettberg2020-07-2811-102/+781
| | | | | Still needs some cleanup and optimizations, variable naming sucks, comments, etc.
* [SERVER] Fix: NULL pointer access in saveLoadAllCacheMaps()Simon Rettberg2020-07-211-0/+2
| | | | Entries in _images array might ne NULL
* [SERVER] Fix: No replication if autoFreeDiskSpaceDelay is disabledSimon Rettberg2020-06-301-4/+12
|
* [SERVER] Know when to stopSimon Rettberg2020-06-101-1/+1
|
* [SERVER] Likewise, flush entire payload on RTT measurementSimon Rettberg2020-06-101-1/+6
|
* [SERVER] Fix list walk when removing client from uplinkSimon Rettberg2020-06-101-1/+3
|
* [SERVER] fix uninitialized variableSimon Rettberg2020-06-101-1/+1
|
* [SERVER] Fix check for RTT block reply sizeSimon Rettberg2020-06-101-1/+1
|
* [SERVER] Check local and remote for updates on rid == 0Simon Rettberg2020-03-311-4/+8
|
* [SERVER] Make lock/thread debugging dedicated cmake optionSimon Rettberg2020-03-232-2/+2
|
* [SERVER] image_ensureDiskSpace should only deletes proxied imagesSimon Rettberg2020-03-201-18/+19
|
* [SERVER] Remember atime in .meta fileSimon Rettberg2020-03-203-62/+139
|