Thanks a ton for the note, Erik.
Erik Mouw wrote:
Yup, I am aware of that and I am also aware the kernel folks refused to take that since it needed a change to the VFS data structures at the least. What I am working on is a change to ext3 cow itself (take a look at www.ext3cow.com) if you are interested.On Thu, May 05, 2005 at 06:05:52PM -0700, Harsha Srinath wrote:
I am trying to port a ext3 cow utility from 2.4 to 2.6. I have a
couple of questions regarding changes in fs.h and fsfilter.h that were in 2.4.
I hope you are aware that there Jörn Engel did a "cowlinks" patch for 2.6.4 about a year ago? Search a linux-kernel archive for the subject "[PATCH] cowlinks v2" or the Message-ID "<20040320083411.GA25934@xxxxxxxxxxxxxxxxxxxx>" . The patch is pretty small.
Thanks. Can you please tell me how is this VFS data structure interfaced to ext3 ?
1. In the the 2.4 ../include/linux/fs.h file, there is a union in the VFS inode struct like :- struct inode { struct list_head i_hash; struct list_head i_list; struct list_head i_dentry; ........ union { struct minix_inode_info minix_i; struct ext2_inode_info ext2_i; struct ext3_inode_info ext3_i; ....... }u;
Can anyone tell me where this union info is present in 2.6.10 ? I grep'ed in the ..../include/linux/ directory but could not find the union in any VFS files. (I want the VFS to know my changed ext3 inode info that I call "struct extcow3_inode_info extcow3_i".)
Al Viro removed it because this struct made it a pain to use out-of-tree filesystems. It's replaced with the generic_ip pointer. I remember cause I did a proof-of-concept patch for a filesystem (iso9660, IIRC).
I again did a grep on "struct ext3_sb_info" in ../include/linux/ext3* and also in ../fs/ext3/ and got these:-
../include/linux/ext3_fs.h:static inline struct ext3_inode_info *EXT3_I(struct inode *inode)
..include/linux/ext3_fs.h: return container_of(inode, struct ext3_inode_info, vfs_inode);
Is this the new "struct ext3_inode_info ext3_i;" replacement?
Thanks again, Harsha
-- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/