mergerfs/vendored/libfuse/include/fuse_req.hpp
Antonio SJ Musumeci 94b4d89f55 Manage cloned /dev/fuse fds in sessions
- Store cloned read-worker fds on fuse_session and close them there.
- Set up clone fallback through session helpers used by the loop.
- Carry per-request fds through receive, process, and reply paths.

Tests show significant performance increases in highly concurrent
workloads on a high core count system. Upto 15% better on reads and
27% on writes.
2026-05-14 20:09:08 -05:00

19 lines
334 B
C++

#pragma once
#include "fuse_req_ctx.h"
#include "fuse_conn_info.hpp"
struct fuse_session;
typedef struct fuse_req_t fuse_req_t;
struct fuse_req_t
{
fuse_req_ctx_t ctx;
struct fuse_session *se;
int fd;
fuse_conn_info_t conn;
unsigned int ioctl_64bit : 1;
};
fuse_req_t* fuse_req_alloc();
void fuse_req_free(fuse_req_t*);