diff options
| author | Amir Goldstein <amir73il@gmail.com> | 2026-06-05 11:26:47 +0200 |
|---|---|---|
| committer | Miklos Szeredi <mszeredi@redhat.com> | 2026-06-15 14:06:19 +0200 |
| commit | e0dcd3f02c5b406b506b085ea41b14218c98b4a2 (patch) | |
| tree | 4f36555cd6cd7bcba71ffdedc9639695e0f4129f /fs/fuse/dev.c | |
| parent | 9f3e7166aaa69a8f7c535e267ac23ecc931c3697 (diff) | |
| download | linux-next-e0dcd3f02c5b406b506b085ea41b14218c98b4a2.tar.gz linux-next-e0dcd3f02c5b406b506b085ea41b14218c98b4a2.zip | |
fuse: add fuse_request_sent tracepoint
This new tracepoint complements fuse_request_send (enqueue) and
fuse_request_end (completion). It fires after the request has been
successfully copied to the daemon's buffer, just before the daemon
can start to process it.
fuse_request_sent does not fire if the copy of the request fails.
It also does not fire for NOTIFY_REPLY, which fires the _end tracepoint
at the end of copy.
This is needed for tools tracking the in-flight state of user initiated
fuse requests.
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Reviewed-by: Joanne Koong <joannelkoong@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/fuse/dev.c')
| -rw-r--r-- | fs/fuse/dev.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c index 7e9bf358f015..63a289853023 100644 --- a/fs/fuse/dev.c +++ b/fs/fuse/dev.c @@ -1633,6 +1633,7 @@ static ssize_t fuse_dev_do_read(struct fuse_dev *fud, struct file *file, list_move_tail(&req->list, &fpq->processing[hash]); __fuse_get_request(req); set_bit(FR_SENT, &req->flags); + trace_fuse_request_sent(req); spin_unlock(&fpq->lock); /* matches barrier in request_wait_answer() */ smp_mb__after_atomic(); |
