Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | [FUSE] cow: stats.txt -> statsHEADmaster | Simon Rettberg | 38 hours | 3 | -15/+18 |
| | |||||
* | [FUSE] Buffer upload reply contents and conditionally print | Simon Rettberg | 42 hours | 2 | -3/+9 |
| | |||||
* | github: Need libcurl now | Simon Rettberg | 3 days | 3 | -0/+3 |
| | |||||
* | [FUSE] I'M AN IDIOT | Simon Rettberg | 3 days | 1 | -1/+1 |
| | |||||
* | [FUSE] Fix hang when trying to chmod/chown /img or /status | Simon Rettberg | 3 days | 1 | -1/+3 |
| | | | | No reply was ever given for unhandled requests. Return EACCES. | ||||
* | [FUSE] Don't exit on SIGQUIT, just stop uploading | Simon Rettberg | 3 days | 3 | -10/+1 |
| | |||||
* | [FUSE] Fix printf length | Simon Rettberg | 3 days | 1 | -2/+2 |
| | |||||
* | [FUSE] Cleanup | Simon Rettberg | 3 days | 1 | -7/+6 |
| | |||||
* | github: cowtest: Write test files to storage at /mnt | Michael Scherle | 3 days | 1 | -40/+41 |
| | | | | / is mostly full and tests might fail... | ||||
* | [FUSE] Reset cluster fail counter on successful upload | Simon Rettberg | 3 days | 1 | -0/+1 |
| | |||||
* | github: retry apt-get calls | Simon Rettberg | 3 days | 1 | -3/+3 |
| | | | | | | | | | | | | | | | | | Run sudo apt-get update -y -qq sudo apt-get update -y -qq sudo apt-get install -y -qq make \ clang-format \ linux-headers-generic \ libfuse-dev \ libjansson-dev \ libcurl4-openssl-dev shell: /usr/bin/bash -e {0} env: ASAN_OPTIONS: leak_check_at_exit=false DOTNET_ROOT: /usr/share/dotnet E: Failed to fetch https://packages.microsoft.com/ubuntu/22.04/prod/dists/jammy/InRelease Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?) E: The repository 'https://packages.microsoft.com/ubuntu/22.04/prod jammy InRelease' is no longer signed. | ||||
* | [FUSE] Fix race condition | Simon Rettberg | 3 days | 1 | -1/+5 |
| | |||||
* | [FUSE] Fix uninitialized speed buffer | Simon Rettberg | 3 days | 1 | -1/+1 |
| | |||||
* | github: Use bash redirects for stdout+err | Simon Rettberg | 3 days | 1 | -8/+8 |
| | |||||
* | github: Enable address sanitizer | Simon Rettberg | 3 days | 1 | -0/+3 |
| | |||||
* | [FUSE] Fix check for failed statsfile write | Simon Rettberg | 3 days | 1 | -1/+1 |
| | |||||
* | [FUSE] Fix division by zero | Simon Rettberg | 3 days | 1 | -1/+1 |
| | |||||
* | [FUSE] Fix use-after-free of curl_slist; unify init code | Simon Rettberg | 3 days | 1 | -31/+38 |
| | |||||
* | github: update fuse tests | Michael Scherle | 3 days | 1 | -46/+33 |
| | |||||
* | [FUSE] Move curl reset to start of function | Simon Rettberg | 3 days | 1 | -2/+1 |
| | |||||
* | [FUSE] Rename version -> revision in /create | Simon Rettberg | 3 days | 2 | -54/+59 |
| | | | | Also turn into normal POST with urlencoded payload. | ||||
* | [FUSE] Use CURLOPT_HEADERFUNCTION instead of curl_easy_header | Simon Rettberg | 3 days | 2 | -23/+49 |
| | | | | | curl_easy_header was introduced in 7.83, so not even available in Ubuntu 22.04. Switch to manual header parsing. | ||||
* | [FUSE] More cleanup and minor fixes | Simon Rettberg | 3 days | 7 | -289/+396 |
| | | | | | | | | - Add support for aborting session and further uploads via SIGQUIT - Make API versioned - Change it to "uuid" everywhere instead of a mix of uuid and guid - Server can now tell us to wait with further uploads - merge request is now urlencoded POST instead of mime data | ||||
* | [FUSE] Rename COW API endpoints again | Simon Rettberg | 3 days | 2 | -13/+19 |
| | | | | | Add a version to the URL, rest can be configured dynamically by -C as it's a simple prefix. | ||||
* | github: Update cow test | Simon Rettberg | 3 days | 1 | -4/+4 |
| | |||||
* | [FUSE] cow: More fixes and refactoring | Simon Rettberg | 3 days | 6 | -490/+560 |
| | | | | | | | | | | | | | | Don't allocate a data cluster in data file for empty l2 entries when resizing the image file. Calculating l2 offset in metadata file was broken and overlapping l1. Delete unneeded entries from cow struct. Rename a few more variables. Fix a few possible race conditions. Only upload modified blocks from cluster. Simplify cow_write() function by handling misaligned start/end first. Try to also simplify cow_read() a bit. TODO: Documentation, update the cow merger service. | ||||
* | [FUSE] cow: Cleanup, comments, fixes, minor refactoring | Simon Rettberg | 3 days | 8 | -412/+495 |
| | | | | | | | | | - Use the term "cluster" for a group of dnbd3-blocks instead of also calling them blocks. - Use term "table" instead of "array" for the L1 and L2 tables. - Use term "index" instead of "offset" when addressing those tables - Fix a few logic bugs, use-after-free - Add TODOs for parts that need better comments | ||||
* | [FUSE] Fixed cow daemon issue | Michael Scherle | 3 days | 6 | -21/+19 |
| | |||||
* | github: removed rpm from test workflow | Michael Scherle | 3 days | 1 | -2/+1 |
| | |||||
* | [COWTEST] improvements to cowtest readme | Michael Scherle | 3 days | 3 | -118/+250 |
| | |||||
* | github: changed test to use net 6 | Michael Scherle | 3 days | 1 | -2/+5 |
| | |||||
* | [COWTEST] random test now cancels on ctrl-c | Michael Scherle | 3 days | 2 | -57/+94 |
| | |||||
* | [FUSE] added pthread creation error message | Michael Scherle | 3 days | 1 | -2/+2 |
| | |||||
* | added github ci for fuse with cow | Michael Scherle | 3 days | 3 | -6/+131 |
| | |||||
* | [FUSE] basic cow implementation & rudimentary tests | Michael Scherle | 3 days | 17 | -70/+3607 |
| | |||||
* | [KERNEL] Fix build on 5.15 kernels >= 5.15.132 | Simon Rettberg | 2024-03-15 | 1 | -0/+1 |
| | |||||
* | cmake: Turn modpost errors into warnings | Simon Rettberg | 2024-03-15 | 1 | -0/+1 |
| | | | | | | | | Default changed some time between 6.1 and 6.6. As we build the module for different kernel versions by fetching the kernel sources and not compiling the whole kernel first, modpost always complains aboit missing symbols after compilation. Ignore this as it's expected to happen. | ||||
* | github: Update checkout action, base image | Simon Rettberg | 2024-03-15 | 3 | -16/+16 |
| | |||||
* | github: Add more kernels to build matrix | Simon Rettberg | 2024-03-15 | 1 | -22/+42 |
| | |||||
* | [KERNEL] Set fake RTT to 500ms on manual server switch | Simon Rettberg | 2024-01-18 | 1 | -2/+2 |
| | | | | | 5ms was apparently way too low and lead to frequent switch-aways from the local dnbd3-server on heavy load during bootup. | ||||
* | [SERVER] Log errno if opening image file fails | Simon Rettberg | 2023-06-30 | 1 | -3/+5 |
| | |||||
* | [SERVER] Threadpool: Add active thread count to error message | Simon Rettberg | 2023-06-14 | 1 | -1/+1 |
| | |||||
* | github: Update 4.19 build env to Ubuntu 20.04 | Simon Rettberg | 2023-06-12 | 1 | -1/+1 |
| | |||||
* | cmake: Make missing Module.symvers a warning | Simon Rettberg | 2023-06-09 | 1 | -1/+3 |
| | | | | | | | Since on github, we just compile against downloaded sources without having a matching built kernel, a missing Module.symvers breaks the action. While the resulting built kernel module might not be of much use, all we want to know is whether it compiles. | ||||
* | Update README.md | Simon Rettberg | 2023-06-09 | 1 | -3/+3 |
| | |||||
* | Cleanup FindKernel cmake macros, add more error checks | Simon Rettberg | 2023-06-07 | 2 | -8/+17 |
| | |||||
* | [KERNEL] Add Rocky 9 support | Simon Rettberg | 2023-06-07 | 2 | -8/+20 |
| | | | | | Co-authored-by: Jonathan Bauer <jonathan.bauer@rz.uni-freiburg.de> Co-authored-by: Manuel Messner <mm@skelett.io> | ||||
* | [FUSE] Fix termination condition for reading host list | Simon Rettberg | 2023-02-14 | 1 | -1/+1 |
| | |||||
* | [FUSE] Make initial connect entirely parallel wrt servers | Simon Rettberg | 2023-02-12 | 1 | -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. | ||||
* | [SHARED] sock_printable: Always null-terminate | Simon Rettberg | 2023-02-12 | 1 | -1/+4 |
| |