aboutsummaryrefslogtreecommitdiffstats
path: root/example/cuse.c
AgeCommit message (Collapse)AuthorLines
2025-06-27license: s/COPYING/GPL2.txt, s/COPYING.LIB/LGPL2.txtizxl007-1/+1
Signed-off-by: izxl007 <zeng.zheng@zte.com.cn>
2024-06-04Add support for no_interrupt (#956)yangyun50-0/+9
The function fuse_session_process_buf_int() would do much things for FUSE_INTERRUPT requests, even there are no FUSE_INTERRUPT requests: 1. check every non-FUSE_INTERRUPT request and add these requests to the linked list(se->list) under a big lock(se->lock). 2. the function fuse_free_req() frees every request and remove them from the linked list(se->list) under a bing lock(se->lock). These operations are not meaningful when there are no FUSE_INTERRUPT requests, and have a great impact on the performance of fuse filesystem because the big lock for each request. In some cases, FUSE_INTERRUPT requests are infrequent, even none at all. Besides, the user-defined filesystem may do nothing for FUSE_INTERRUPT requests. And the kernel side has the option "no_interrupt" in struct fuse_conn. This kernel option can be enabled by return ENOSYS in libfuse for the reply of FUSE_INTERRUPT request. But I don't find the code to enable the "no_interrupt" kernel option in libfuse. So add the no_interrupt support, and when this operaion is enabled: 1. remove the useless locking operaions and list operations. 2. return ENOSYS for the reply of FUSE_INTERRUPT request to inform the kernel to disable FUSE_INTERRUPT request.
2021-06-09Cuse example: Fix memory leak (#607)Christian Menges-5/+11
* cuse example: fix memory leak * Travis CI: re-enable leak checking
2020-03-13State GPL version in comment (#485)Dr. David Alan Gilbert-1/+1
IN a bunch of comments we say 'under the terms of the GNU GPL', make it clear this is GPLv2 (as LICENSE says). Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2017-09-25Removed unneccessary #include <config.h> from examplesNikolaus Rath-2/+0
Fixes: #208.
2017-08-22Fix two compiler warnings.Nikolaus Rath-1/+1
2017-07-08Added public fuse_lib_help(), bumped minor versionNikolaus Rath-1/+1
2017-01-12Replaced evil pointer magic with offsetof()Nikolaus Rath-2/+2
This triggered undefined behaviour warnings from UBSan.
2016-10-31silence bogus eclipse linter warningdivinity76-0/+1
"No break at the end of case cuse.c /example line 235 Code Analysis Problem"
2016-10-28Clean-up doxygen documentationNikolaus Rath-3/+2
Fixes: #81.
2016-10-09Renamed cuses example and added test programNikolaus Rath-0/+322
An earlier version of the fioclient.c example was intended to be used together with cusexmp.c. The former has since evolved into ioctl_client.c and no longer has the function necessary to test CUSE. Therefore, we've added a new cuse_client.c that is clearly associated with the cuse.c example file system.