summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernd Schubert <bschubert@ddn.com>2022-08-05 20:51:51 +0200
committerNikolaus Rath <Nikolaus@rath.org>2022-09-04 13:07:15 +0100
commit8de32bc3c52da74b82755c8fd6973919997408fe (patch)
tree0b676e3cba22e1f9dce827b658ea3b6014f7e95f
parentd823cab63ad61a5b9ba09e6f4ccfd246572cd5e3 (diff)
downloadfuse-8de32bc3c52da74b82755c8fd6973919997408fe.tar.gz
Add summary of changes regarding 'max_threads' to ChangeLog.rst
Update the change log file with the summary of API changes related to the 'max_threads' changes.
-rw-r--r--ChangeLog.rst55
1 files changed, 55 insertions, 0 deletions
diff --git a/ChangeLog.rst b/ChangeLog.rst
index f4cb07c..08df4a8 100644
--- a/ChangeLog.rst
+++ b/ChangeLog.rst
@@ -1,3 +1,58 @@
+libfuse 3.12.0 (<unreleased>)
+===========================
+* The 'max_idle_threads' parameter has performance implication
+ due to run time thread creation and destruction per request
+ and it is deprecated in favor of the new max_threads parameter.
+
+ * API changes:
+ In order to avoid future version symboling and also to
+ allow to set fuse_loop_config defaults an API change has been
+ introduced beginning with API version (FUSE_USE_VERSION) 312.
+ 'struct fuse_loop_config' is now private and has to be
+ constructed using fuse_loop_cfg_create(). Besides allocating
+ memory this function also sets struct member default.
+ Desctruction (free) is done through fuse_loop_cfg_destroy().
+ Struct parameters can be changed using fuse_loop_cfg_set_*()
+ functions.
+ New functions regarding the fuse-loop configuration are:
+ fuse_loop_cfg_create
+ fuse_loop_cfg_destroy
+ fuse_loop_cfg_set_idle_threads
+ fuse_loop_cfg_set_max_threads
+ fuse_loop_cfg_set_clone_fd
+ fuse_loop_cfg_convert (internal for API/ABI compatibility)
+ Functions details can be found in fuse_common.h
+
+ In API version 312 the fuse_session_loop_mt() function now
+ also accepts struct fuse_loop_config * as NULL pointer and
+ uses defaults then.
+
+ * Users of fuse_parse_cmdline() get the new option
+ 'max_threads' with API version 312.
+
+ * File system conversion help:
+ - See example/passthrough_hp.cc
+
+ #define FUSE_USE_VERSION FUSE_MAKE_VERSION(3, 12)
+
+ ...
+ main(int argc, char *argv[])
+ ...
+ struct fuse_loop_config *loop_config;
+ ...
+ loop_config = fuse_loop_cfg_create();
+ ...
+ ret = fuse_session_loop_mt(se, loop_config);
+ ...
+ fuse_loop_cfg_destroy(loop_config);
+
+ * Further notes:
+ Using max_threads == 1 and calling fuse_session_loop_mt() works,
+ it will run single threaded similar to fuse_session_loop(). In
+ fact, fuse_session_loop() might get deprecated in future
+ versions.
+
+
libfuse 3.11.0 (2022-05-02)
===========================