summaryrefslogtreecommitdiffstats
path: root/inc
diff options
context:
space:
mode:
authorMichael Scherle2022-02-17 18:58:25 +0100
committerSimon Rettberg2024-05-13 18:25:14 +0200
commitd92d1d3faf7cde517d8c3fe914301eb5aa872f62 (patch)
treeff2eaa0a640223b36dfabd3ffe29772e44e50733 /inc
parent[KERNEL] Fix build on 5.15 kernels >= 5.15.132 (diff)
downloaddnbd3-d92d1d3faf7cde517d8c3fe914301eb5aa872f62.tar.gz
dnbd3-d92d1d3faf7cde517d8c3fe914301eb5aa872f62.tar.xz
dnbd3-d92d1d3faf7cde517d8c3fe914301eb5aa872f62.zip
[FUSE] basic cow implementation & rudimentary tests
Diffstat (limited to 'inc')
-rw-r--r--inc/dnbd3/config.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/inc/dnbd3/config.h b/inc/dnbd3/config.h
index eb4b8b1..df9d0e0 100644
--- a/inc/dnbd3/config.h
+++ b/inc/dnbd3/config.h
@@ -40,4 +40,20 @@
// +++++ Block Device +++++
#define DNBD3_BLOCK_SIZE ((uint64_t)4096) // NEVER CHANGE THIS OR THE WORLD WILL END!
+// +++++ COW +++++
+#define COW_BITFIELD_SIZE 40 // NEVER CHANGE THIS OR THE WORLD WILL ALSO END!
+#define COW_FILE_META_MAGIC_VALUE ((uint64_t)0xEBE44D6E72F7825E) // Magic Value to recognize a Cow meta file
+#define COW_FILE_DATA_MAGIC_VALUE ((uint64_t)0xEBE44D6E72F7825F) // Magic Value to recognize a Cow data file
+#define COW_MIN_UPLOAD_DELAY 60 // in seconds
+#define COW_STATS_UPDATE_TIME 5 // time in seconds the cow status files gets updated (while uploading blocks)
+#define COW_MAX_PARALLEL_UPLOADS 10 // maximum number of parallel uploads
+#define COW_MAX_PARALLEL_BACKGROUND_UPLOADS 2 // maximum number of parallel uploads while the image is still mounted
+#define COW_URL_STRING_SIZE 500 // Max string size for an url
+#define COW_SHOW_UL_SPEED 1 // enable display of ul speed in cow status file
+#define COW_MAX_IMAGE_SIZE 1000LL * 1000LL * 1000LL * 1000LL; // Maximum size an image can have(tb*gb*mb*kb)
+// +++++ COW API Endpoints +++++
+#define COW_API_CREATE "%s/api/File/Create"
+#define COW_API_UPDATE "%s/api/File/Update?guid=%s&BlockNumber=%lu"
+#define COW_API_START_MERGE "%s/api/File/StartMerge"
+
#endif /* CONFIG_H_ */