aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBernd Schubert <bschubert@ddn.com>2024-09-27 00:57:21 +0200
committerBernd Schubert <bernd.schubert@fastmail.fm>2024-09-28 16:24:22 +0200
commitba7d362d14757f937a05026a612759f487ffc168 (patch)
treea9db235a74c0bea522107ab5db8416f57e0a2628
parent9069ad9eb6ba908de9cbbdd8ba411cac963101ff (diff)
downloadlibfuse-ba7d362d14757f937a05026a612759f487ffc168.tar.gz
fuse_lowlevel FUSE_INIT: group bufsize and max_write adjustments
The further these lines are separated from each other the harder it is to read the code. There shouldn't be any code change behavior here.
-rw-r--r--lib/fuse_lowlevel.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c
index 819e435..84185d5 100644
--- a/lib/fuse_lowlevel.c
+++ b/lib/fuse_lowlevel.c
@@ -2114,20 +2114,10 @@ void do_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg)
se->conn.time_gran = 1;
- if (bufsize < FUSE_MIN_READ_BUFFER) {
- fuse_log(FUSE_LOG_ERR, "fuse: warning: buffer size too small: %zu\n",
- bufsize);
- bufsize = FUSE_MIN_READ_BUFFER;
- }
- se->bufsize = bufsize;
-
se->got_init = 1;
if (se->op.init)
se->op.init(se->userdata, &se->conn);
- if (se->conn.max_write > bufsize - FUSE_BUFFER_HEADER_SIZE)
- se->conn.max_write = bufsize - FUSE_BUFFER_HEADER_SIZE;
-
if (se->conn.want & (~se->conn.capable)) {
fuse_log(FUSE_LOG_ERR, "fuse: error: filesystem requested capabilities "
"0x%x that are not supported by kernel, aborting.\n",
@@ -2149,9 +2139,19 @@ void do_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg)
return;
}
- if (se->conn.max_write < bufsize - FUSE_BUFFER_HEADER_SIZE) {
- se->bufsize = se->conn.max_write + FUSE_BUFFER_HEADER_SIZE;
+ if (bufsize < FUSE_MIN_READ_BUFFER) {
+ fuse_log(FUSE_LOG_ERR,
+ "fuse: warning: buffer size too small: %zu\n",
+ bufsize);
+ bufsize = FUSE_MIN_READ_BUFFER;
}
+
+ if (se->conn.max_write > bufsize - FUSE_BUFFER_HEADER_SIZE)
+ se->conn.max_write = bufsize - FUSE_BUFFER_HEADER_SIZE;
+ if (se->conn.max_write < bufsize - FUSE_BUFFER_HEADER_SIZE)
+ bufsize = se->conn.max_write + FUSE_BUFFER_HEADER_SIZE;
+ se->bufsize = bufsize;
+
if (arg->flags & FUSE_MAX_PAGES) {
outarg.flags |= FUSE_MAX_PAGES;
outarg.max_pages = (se->conn.max_write - 1) / getpagesize() + 1;