aboutsummaryrefslogtreecommitdiff
path: root/include/fuse_lowlevel.h
diff options
context:
space:
mode:
authorNikolaus Rath <Nikolaus@rath.org>2018-11-06 18:41:58 +0000
committerNikolaus Rath <Nikolaus@rath.org>2018-11-06 18:50:07 +0000
commitb7ccb0d4c9771b3a82f2e7a9d0b1902babe0279f (patch)
treeca1e769a01ee49d9f38e0fe58b1fd99c029ab618 /include/fuse_lowlevel.h
parentc779a4ee2b8f61e54442d9f65c0efcee18b805cb (diff)
downloadlibfuse-b7ccb0d4c9771b3a82f2e7a9d0b1902babe0279f.tar.gz
Document when `fuse_lowlevel_notify_*` functions may block.
Diffstat (limited to 'include/fuse_lowlevel.h')
-rw-r--r--include/fuse_lowlevel.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/fuse_lowlevel.h b/include/fuse_lowlevel.h
index 7ae8c1e..395c0d9 100644
--- a/include/fuse_lowlevel.h
+++ b/include/fuse_lowlevel.h
@@ -1531,6 +1531,15 @@ int fuse_lowlevel_notify_poll(struct fuse_pollhandle *ph);
* this (or a newer) version, the function will return -ENOSYS and do
* nothing.
*
+ * If the filesystem has writeback caching enabled, invalidating an
+ * inode will first trigger a writeback of all dirty pages. The call
+ * will block until all writeback requests have completed and the
+ * inode has been invalidated. It will, however, not wait for
+ * completion of pending writeback requests that have been issued
+ * before.
+ *
+ * If there are no dirty pages, this function will never block.
+ *
* @param se the session object
* @param ino the inode number
* @param off the offset in the inode where to start invalidating
@@ -1554,6 +1563,8 @@ int fuse_lowlevel_notify_inval_inode(struct fuse_session *se, fuse_ino_t ino,
* removexattr(), readdir() or readdirplus() request for the inode
* itself.
*
+ * When called correctly, this function will never block.
+ *
* Added in FUSE protocol version 7.12. If the kernel does not support
* this (or a newer) version, the function will return -ENOSYS and do
* nothing.
@@ -1582,6 +1593,8 @@ int fuse_lowlevel_notify_inval_entry(struct fuse_session *se, fuse_ino_t parent,
* description of fuse_lowlevel_notify_inval_entry() for more
* details).
*
+ * When called correctly, this function will never block.
+ *
* Added in FUSE protocol version 7.18. If the kernel does not support
* this (or a newer) version, the function will return -ENOSYS and do
* nothing.