I'm writing a general cache for filesystems such as AFS, NFSv4, and
Lustre. Block devices are made available to the "cache manager" by means of a
filesystem that can be mounted. I'm storing meta data in an inode in the
cache, but to scan this at the moment I need to gain a "struct file" to use
with do_generic_file_read().
This involves either creating a dummy dentry and struct file (which will cause
Al Viro to come looking for me with a shotgun), or to use an extra auxilliary
filesystem mounted with do_kern_mount(), neither of which are particularly
appealing.
This patch is the alternative: make a function (do_generic_mapping_read())
that I can pass an inode or an address_space to, and make
do_generic_file_read() call that. This allows me to make use of readahead
semantics without having to reinvent them for myself.
David
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/