You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
core: Reduce amount of calls to getattr/Stat, improve vfs.read
For many operations, we currently call VirtualFileSystem#getattr(Inode),
which gets a full set of "stat" metadata for a given Inode.
In many cases however, we're only interested in the type of the Inode
(e.g., directory, regular file, symlink, etc.). Certain
VirtualFileSystem implementations may be able to retrieve that specific
information significantly faster than the full metadata set.
Replace calls to vfs.getattr(Inode).type() with vfs.getStatType() where
applicable, and provide default implementations for backwards
compatibility.
Also don't retrieve Stat information at all where not required:
1. In PseudoFS.checkAccess with ACE4_READ_ATTRIBUTES, and
2. For OperationREAD, allow VirtualFileSystem to skip the Stat check
(currently checking StatType but also file size), which is currently
done per every call to "read":
Clarify the requirement of signaling "eof reached" as per NFSv4 spec,
provide a new read() method to VirtualFileSystem with a corresponding
callback function, and provide a default implementation for backwards
compatibility.
Signed-off-by: Christian Kohlschütter <[email protected]>
0 commit comments