summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | [SERVER] Handle closeUnusedFd via timerSimon Rettberg2019-08-282-25/+19Star
| | | |
| * | | [SERVER] Add timer infrastructureSimon Rettberg2019-08-272-10/+134
| | | | | | | | | | | | | | | | To be used by "close unused fd" checks, and others...
| * | | [SERVER] Fix swapped assignmentSimon Rettberg2019-08-271-1/+1
| | | |
| * | | [SERVER] Use reference counting for uplinkSimon Rettberg2019-08-2711-140/+311
| | | | | | | | | | | | | | | | First step towards less locking for proxy mode
| * | | [SERVER] Fix warnings, simplify lockingSimon Rettberg2019-08-262-12/+13
| | | |
| * | | [BENCH] Check CMD_GET_BLOCK reply cmd typeSimon Rettberg2019-08-231-0/+3
| | | |
| * | | [SERVER] Get rid of alt-servers thread, per-uplink rtt historySimon Rettberg2019-08-229-485/+469Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Alt-Server checks are now run using the threadpool, so we don't need a queue and dedicated thread anymore. The rtt history is now kept per uplink, so many uplinks won't overwhelm the history, making its time window very short. Also the fail counter is now split up; a global one for when the server actually isn't reachable, a local (per-uplink) one for when the server is reachable but doesn't serve the requested image.
| * | | [SERVER] Put request handle into CMD_ERROR replySimon Rettberg2019-08-221-1/+1
| | | |
| * | | [SERVER] Add struct representing active connection to uplink serverSimon Rettberg2019-08-185-66/+60Star
| | | |
| * | | [SERVER] uplink: More consistent type/variable namingSimon Rettberg2019-08-185-288/+294
| | | | | | | | | | | | | | | | | | | | * Change link to uplink everywhere * dnbd3_connection_t -> dnbd3_uplink_t
| * | | [SERVER] altservers: Don't run check if <= 1 alt server availableSimon Rettberg2019-08-181-4/+11
| | | |
| * | | [SERVER] net.c: Minor reorderingSimon Rettberg2019-08-181-8/+9
| | | |
| * | | [SERVER] Lock free thread poolSimon Rettberg2019-08-161-53/+57
| | | |
| * | | [SHARED] Better errno handling in connect() helperSimon Rettberg2019-08-151-0/+8
| | | |
| * | | [SERVER] Better lock debugging: Always check lock orderSimon Rettberg2019-08-0711-226/+198Star
| | | | | | | | | | | | | | | | | | | | | | | | Lock order is predefined in locks.h. Immediately bail out if a lock with lower priority is obtained while the same thread already holds one with higher priority.
| * | | [SERVER] Lock-free queue for altservers check threadSimon Rettberg2019-08-072-48/+57
| | | |
| * | | [BENCH] Allow specifying request block sizeSimon Rettberg2019-08-074-19/+32
| | | |
| * | | [SERVER] Use more _AtomicSimon Rettberg2019-08-072-5/+4Star
| | | |
| * | | [SERVER] Fix race condition and invalid lock orderSimon Rettberg2019-08-071-4/+7
| | | |
| * | | [SERVER] uplink: Improve attaching to existing requestsSimon Rettberg2019-08-062-35/+74
| | | | | | | | | | | | | | | | | | | | Allow attaching in ULR_PROCESSING state, leave lower slots empty to increase chances attaching to ULR_PROCESSING.
| * | | [BENCH] Increase timeouts, fix block payload readingSimon Rettberg2019-08-061-3/+3
| | | |
| * | | [BENCH] Fix a couple bugs in stress testerSimon Rettberg2019-08-063-82/+70Star
| | | |
| * | | [SERVER] Improve debug output if a locked lock gets destroyedSimon Rettberg2019-08-061-0/+1
| | | |
| * | | [SERVER] Fix: Client thread could destroy sendMutex while in useSimon Rettberg2019-08-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Fix a race condition where the client thread tears down the client struct including the sendMutex while the uplink thead is currently holding the lock, trying to send data to the client.
| * | | [SERVER] Allow uplink shutdown if bgrMinClients > image->usersSimon Rettberg2019-08-051-1/+2
| | | |
| * | | [SERVER] Add sanity check to threadpool_run for NULL routineSimon Rettberg2019-08-051-0/+4
| | | |
| * | | [SERVER] Switch threadpool back to spinlock, add idle thread counterSimon Rettberg2019-08-051-22/+23
| | | |
| * | | [SERVER] Atomicize some global flagsSimon Rettberg2019-08-032-2/+2
| | | |
| * | | [SERVER] Make image->users atomic and get rid of some lockingSimon Rettberg2019-08-022-53/+40Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this change it should be safe to read the users count of an image without locking first, assuming you already have a reference on the image or are otherwise sure it cannot be freed, i.e. in an active uplink. Updating users, or checking whether it's 0 in order to free the image should only be done while holding the imageListLock.
* | | | [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
| | | |
* | | | [SHARED] Fix: connect with timeout returns socket handle on EINPROGRESSSimon Rettberg2020-07-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Only if we request non-blocking connect (connect_ms == -1) this function should return a socket fd that is not actually connected. Otherwise, consder this a failure, close the sock fd, and return -1.
* | | | [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-085-119/+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-154-31/+24Star
| | | |
* | | | SIGINT fix, Reader-Writer oroblem fixln-tech2019-11-134-36/+43
| | | |
* | | | cleaned codeln-tech2019-10-273-176/+19Star
| | | |
* | | | cleaned code and atomic_intsln-tech2019-10-270-0/+0
|\ \ \ \
| * | | | dnbd3 fuse lowlevel first implementationln-tech2019-10-227-72/+421
| | |_|/ | |/| |
* / | | cleaned code and atomic_ints againstln-tech2019-10-277-72/+421
|/ / /
* | / cmake: Try to get include directories right (per target)Simon Rettberg2019-10-073-36/+164
| |/ |/|
* | [FUSE] Increase socket timeout from 1 to 3 secondsSimon Rettberg2019-08-281-2/+2
|/