On Fri, Sep 07, 2007 at 04:31:26PM +0900, hooanon05@xxxxxxxxxxx wrote: > > When the first readdir is issued: > - call vfs_readdir for every underlying opened dir (file) object. > - store every entry to either the hash table for the result or the > whiteout, when the same-named entry didn't exist in the tables. > - to improvement the performance, the allocated memory for the hash > tables are managed in a pointer array. and the elements are > concatinated logically by the pointer. > - the pointer for the result-table, the version, and the currect jiffies > are set to vdir, which is a cache in an inode. > - all cache are copied to a member in a file object. > - the index of the cache memory block and the offset in an array is > handled as the seek position. Ok, interesting approach. So you define the seek behaviour on your directory cache rather than allowing the underlying filesystems to interpret the seek. I guess we can do something similar with Union Mounts also. > If you are interested in this approach, please refer to > http://aufs.sf.net. It is working and used by several people. Will look at it. And thanks Junjiro for your detailed explanation of the aufs approach. Regards, Bharata. - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html