Skip to contentSkip to conversation

ext2's inode i_version gone, what now? (stable branch)

DISCUSSION Andreas Schuldei 2 participants 3 messages Dec 29, 2000 – Jan 4, 2001

lore
Share & tools
lore
#0 lore raw

I try to use the Steganographic filesystem stegfs on top of a 2.2.18 kernel, while the stegfs patch was against 2.2.14. The patch applied allmost clean, but that was easy to fix.

However a real problem (for me) is that the author (whom I can not reach by email) build stegfs on top of the ext2 filesystem. There he uses ext2's inode structure and at some places reads/writes from ext2 inode's i_version. However, this is not there in ext2_fs_i.h. But I am working with source for 2.2.18 and a lot could have happend since 2.2.14. I would not have expected the inode struct to change, though.

Why was it taken away? How is compatibility maintained? What could I use instead to fix the problem?

Anyone who is interested in this:
http://ban.joh.cam.ac.uk/~adm36/StegFS/download.html

the error happens at
make[3]: Entering directory `/usr/src/linux/fs/stegfs'
cc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -c -o inode.o inode.c
inode.c: In function `stegfs_read_inode':
inode.c:1376: structure has no member named i_version' inode.c: In function stegfs_update_inode':
inode.c:1785: structure has no member named `i_version'

please cc me, I am not on this list.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#1 lore raw
Quoted 9 lines · * Andreas Schuldei ([email protected]) [001229 22:08]:

However a real problem (for me) is that the author (whom I can not reach by email) build stegfs on top of the ext2 filesystem. There he uses ext2's inode structure and at some places reads/writes from ext2 inode's i_version. However, this is not there in ext2_fs_i.h. But I am working with source for 2.2.18 and a lot could have happend since 2.2.14. I would not have expected the inode struct to change, though.

Why was it taken away? How is compatibility maintained? What could I use instead to fix the problem?

Now I think i_version was moved from ext2_fs_i.h (struct ext2_inode_info) to fs.h (struct inode). stegfs still has i_version in it's own stegfs_inode_info. I guess to cleanly move the stegfs from 2.2.14 to 2.2.18 it would be good to not have a own stegfs i_version. Are there any mean, hidden, desasterous implications waiting if I move it?

Quoted 2 lines

Anyone who is interested in this:
http://ban.joh.cam.ac.uk/~adm36/StegFS/download.html

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#2 lore raw
In reply to Andreas Schuldei

Hi,

Quoted 9 lines · Andreas Schuldei
Quoted 3 lines

Why was it taken away? How is compatibility maintained? What could I use instead to fix the problem?

Now I think i_version was moved from ext2_fs_i.h (struct ext2_inode_info) to fs.h (struct inode). stegfs still has i_version in it's own stegfs_inode_info. I guess to cleanly move the stegfs from 2.2.14 to 2.2.18 it would be good to not have a own stegfs i_version. Are there any mean, hidden, desasterous implications waiting if I move it?

It changed from i_version to i_generation, and NFS serving will break in subtle ways if you reuse it.

Cheers,
Stephen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/