VFS Questions

Peter Miller (peterm@jna.com.au)
Thu, 14 May 1998 14:14:21 +1000


OK, so I've been chewing away at my null file system filter. I have
a few questions about some of the VFS methods, all provoked by trying
to cope with (interesting!) error states when filtering / proxying /
forwarding VFS methods.

[Version 2.1.97 is my reference, just in case some or all of the below
have changed.]

Could some well informed persons please (try to) explain the following...

Who is the vfs designer and/or maintainer? Should I have sent this
email direct to them?

Why is the return value from file_operations.fasync ignored in
fs/fcntl.c::setfl but not elsewhere?

Why is the return status of super_operations.statfs ignored in
fs/super.c::sys_ustat but not elsewhere?

Why is the return status of file_operations.revalidate ignored in
fs/devices.c::check_disk_change but not elsewhere?

Why does file_operations.truncate have a void return type? Surely -EIO is
a possible error. Plus network comms errors, for networked file systems.

Why does super_operations.read_inode have a void return type? Surely -EIO
is a possible error. (Plus network comms errors, for networked file
systems.) Surely -EINVAL is a sensable error for invalid inode numbers.
Rather than make_bad_inode *inside* the method in every fs type, why
not make_bad_inode in the VFS layer?

Why does super_operations.write_inode have a void return type?
Surely -EIO is a possible error. (For networked file systems, -EINVAL
is conceivable, if it has now disappeared.) Plus network comms errors,
for networked file systems.

Why does super_operations.delete_inode have a void return type?
Surely -EIO is a possible error. (For networked file systems, -EINVAL
is conceivable, if it has now disappeared.) Plus network comms errors,
for networked file systems.

Why does super_operations.write_super have a void return type? Surely
-EIO is a possible error. Plus network comms errors, for networked
file systems.

Regards
Peter Miller E-Mail: millerp@canb.auug.org.au
/\/\* WWW: http://www.canb.auug.org.au/~millerp/
Disclaimer: The opinions expressed here are personal and do not necessarily
reflect the opinion of my employer or the opinions of my colleagues.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu