fuse_main() parses the arguments passed to your user mode program,
then calls fuse_mount() (lib/mount.c).
-fuse_mount() creates a UNIX domain socket, then forks and execs
+fuse_mount() creates a UNIX domain socket pair, then forks and execs
fusermount (util/fusermount.c) passing it one end of the socket in the
FUSE_COMMFD_ENV environment variable.
fusermount (util/fusermount.c) makes sure that the fuse module is
-loaded. fusermount then open /proc/fs/fuse/dev and send the file
-handle over a UNIX domain socket back to fuse_mount().
+loaded. fusermount then open /dev/fuse and send the file handle over a
+UNIX domain socket back to fuse_mount().
-fuse_mount() returns the filehandle for /proc/fs/fuse/dev to fuse_main().
+fuse_mount() returns the filehandle for /dev/fuse to fuse_main().
fuse_main() calls fuse_new() (lib/fuse.c) which allocates the struct
fuse datastructure that stores and maintains a cached image of the
Lastly, fuse_main() calls either fuse_loop() (lib/fuse.c) or
fuse_loop_mt() (lib/fuse_mt.c) which both start to read the filesystem
-system calls from the /proc/fs/fuse/dev, call the usermode functions
+system calls from the /dev/fuse, call the usermode functions
stored in struct fuse_operations datastructure before calling
fuse_main(). The results of those calls are then written back to the
-/proc/fs/fuse/dev file where they can be forwarded back to the system
+/dev/fuse file where they can be forwarded back to the system
calls.
2. The kernel module.
other does not respond with a reply.
The proc filesystem component in kernel/dev.c responds to file io
-requests to the file /proc/fs/fuse/dev. fuse_dev_read() handles the
+requests to the file /dev/fuse. fuse_dev_read() handles the
file reads and returns commands from the "list of requests" structure
to the calling program. fuse_dev_write() handles file writes and takes
the data written and places them into the req->out datastructure where
* stored objects are released. The requester thread is woken up (if
* still waiting), the 'end' callback is called if given, else the
* reference to the request is released
- *
+ *
* Releasing extra reference for foreground requests must be done
* within the same locked region as setting state to finished. This
* is because fuse_reset_request() may be called after request is