diff -urN gfs-ref/fs/adfs/adfs.h gfs/fs/adfs/adfs.h --- gfs-ref/fs/adfs/adfs.h Mon Dec 11 16:58:00 2000 +++ gfs/fs/adfs/adfs.h Sun Dec 24 18:39:02 2000 @@ -72,7 +72,7 @@ int adfs_bmap(struct inode *inode, int block); #endif struct inode *adfs_iget(struct super_block *sb, struct object_info *obj); -void adfs_read_inode(struct inode *inode); +void adfs_read_inode(struct inode *inode, void *opaque); void adfs_write_inode(struct inode *inode); int adfs_notify_change(struct dentry *dentry, struct iattr *attr); diff -urN gfs-ref/fs/adfs/inode.c gfs/fs/adfs/inode.c --- gfs-ref/fs/adfs/inode.c Mon Dec 11 16:58:00 2000 +++ gfs/fs/adfs/inode.c Sun Dec 24 18:38:32 2000 @@ -239,7 +239,7 @@ * inode number on this filesystem. This means that this filesystem cannot * be shared via NFS. */ -void adfs_read_inode(struct inode *inode) +void adfs_read_inode(struct inode *inode, void *opaque) { adfs_error(inode->i_sb, "unsupported method of reading inode"); make_bad_inode(inode); diff -urN gfs-ref/fs/affs/inode.c gfs/fs/affs/inode.c --- gfs-ref/fs/affs/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/affs/inode.c Sun Dec 24 18:38:32 2000 @@ -49,7 +49,7 @@ } void -affs_read_inode(struct inode *inode) +affs_read_inode(struct inode *inode, void *opaque) { struct buffer_head *bh; struct file_front *file_front; diff -urN gfs-ref/fs/autofs/inode.c gfs/fs/autofs/inode.c --- gfs-ref/fs/autofs/inode.c Mon Jan 17 16:44:41 2000 +++ gfs/fs/autofs/inode.c Sun Dec 24 18:38:32 2000 @@ -56,7 +56,7 @@ } static int autofs_statfs(struct super_block *sb, struct statfs *buf, int bufsiz); -static void autofs_read_inode(struct inode *inode); +static void autofs_read_inode(struct inode *inode, void *opaque); static void autofs_write_inode(struct inode *inode); static struct super_operations autofs_sops = { @@ -292,7 +292,7 @@ return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0; } -static void autofs_read_inode(struct inode *inode) +static void autofs_read_inode(struct inode *inode, void *opaque) { ino_t ino = inode->i_ino; unsigned int n; diff -urN gfs-ref/fs/coda/inode.c gfs/fs/coda/inode.c --- gfs-ref/fs/coda/inode.c Tue Sep 5 02:28:47 2000 +++ gfs/fs/coda/inode.c Sun Dec 24 18:38:32 2000 @@ -35,7 +35,7 @@ /* VFS super_block ops */ static struct super_block *coda_read_super(struct super_block *, void *, int); -static void coda_read_inode(struct inode *); +static void coda_read_inode(struct inode *, void *opaque); static int coda_notify_change(struct dentry *dentry, struct iattr *attr); static void coda_clear_inode(struct inode *); static void coda_put_super(struct super_block *); @@ -156,7 +156,7 @@ } /* all filling in of inodes postponed until lookup */ -static void coda_read_inode(struct inode *inode) +static void coda_read_inode(struct inode *inode, void *opaque) { struct coda_inode_info *cii; ENTRY; diff -urN gfs-ref/fs/devpts/inode.c gfs/fs/devpts/inode.c --- gfs-ref/fs/devpts/inode.c Mon Jan 17 16:44:41 2000 +++ gfs/fs/devpts/inode.c Sun Dec 24 18:38:32 2000 @@ -57,7 +57,7 @@ } static int devpts_statfs(struct super_block *sb, struct statfs *buf, int bufsiz); -static void devpts_read_inode(struct inode *inode); +static void devpts_read_inode(struct inode *inode, void *opaque); static void devpts_write_inode(struct inode *inode); static struct super_operations devpts_sops = { @@ -258,7 +258,7 @@ return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0; } -static void devpts_read_inode(struct inode *inode) +static void devpts_read_inode(struct inode *inode, void *opaque) { ino_t ino = inode->i_ino; struct devpts_sb_info *sbi = SBI(inode->i_sb); diff -urN gfs-ref/fs/efs/inode.c gfs/fs/efs/inode.c --- gfs-ref/fs/efs/inode.c Mon Jan 17 16:44:41 2000 +++ gfs/fs/efs/inode.c Sun Dec 24 18:38:32 2000 @@ -28,7 +28,7 @@ return; } -void efs_read_inode(struct inode *inode) { +void efs_read_inode(struct inode *inode, void *opaque) { int i, inode_index; dev_t device; struct buffer_head *bh; diff -urN gfs-ref/fs/ext2/inode.c gfs/fs/ext2/inode.c --- gfs-ref/fs/ext2/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/ext2/inode.c Sun Dec 24 18:38:32 2000 @@ -452,7 +452,7 @@ return NULL; } -void ext2_read_inode (struct inode * inode) +void ext2_read_inode (struct inode * inode, void *opaque) { struct buffer_head * bh; struct ext2_inode * raw_inode; diff -urN gfs-ref/fs/hfs/super.c gfs/fs/hfs/super.c --- gfs-ref/fs/hfs/super.c Mon Jan 17 16:44:42 2000 +++ gfs/fs/hfs/super.c Sun Dec 24 18:38:32 2000 @@ -34,7 +34,7 @@ /*================ Forward declarations ================*/ -static void hfs_read_inode(struct inode *); +static void hfs_read_inode(struct inode *, void *opaque); static void hfs_put_super(struct super_block *); static int hfs_statfs(struct super_block *, struct statfs *, int); static void hfs_write_super(struct super_block *); @@ -69,7 +69,7 @@ * this doesn't actually do much. hfs_iget actually fills in the * necessary inode information. */ -static void hfs_read_inode(struct inode *inode) +static void hfs_read_inode(struct inode *inode, void *opaque) { inode->i_mode = 0; inode->i_op = NULL; diff -urN gfs-ref/fs/hpfs/hpfs_fs.c gfs/fs/hpfs/hpfs_fs.c --- gfs-ref/fs/hpfs/hpfs_fs.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/hpfs/hpfs_fs.c Sun Dec 24 18:38:32 2000 @@ -126,7 +126,7 @@ /* super block ops */ -static void hpfs_read_inode(struct inode *); +static void hpfs_read_inode(struct inode *, void *opaque); static void hpfs_put_super(struct super_block *); static int hpfs_statfs(struct super_block *, struct statfs *, int); static int hpfs_remount_fs(struct super_block *, int *, char *); @@ -635,7 +635,7 @@ * ls sounds like fsck. */ -static void hpfs_read_inode(struct inode *inode) +static void hpfs_read_inode(struct inode *inode, void *opaque) { struct super_block *s = inode->i_sb; diff -urN gfs-ref/fs/inode.c gfs/fs/inode.c --- gfs-ref/fs/inode.c Sun Dec 24 18:38:18 2000 +++ gfs/fs/inode.c Sun Dec 24 18:38:32 2000 @@ -645,7 +645,7 @@ spin_unlock(&inode_lock); clean_inode(inode); - sb->s_op->read_inode(inode); + sb->s_op->read_inode(inode, opaque); /* * This is special! We do not need the spinlock diff -urN gfs-ref/fs/isofs/inode.c gfs/fs/isofs/inode.c --- gfs-ref/fs/isofs/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/isofs/inode.c Sun Dec 24 18:38:32 2000 @@ -72,7 +72,7 @@ return; } -static void isofs_read_inode(struct inode *); +static void isofs_read_inode(struct inode *, void *); static int isofs_statfs (struct super_block *, struct statfs *, int); static struct super_operations isofs_sops = { @@ -1094,7 +1094,7 @@ goto out; } -static void isofs_read_inode(struct inode * inode) +static void isofs_read_inode(struct inode * inode, void *opaque) { struct super_block *sb = inode->i_sb; unsigned long bufsize = ISOFS_BUFFER_SIZE(inode); diff -urN gfs-ref/fs/minix/inode.c gfs/fs/minix/inode.c --- gfs-ref/fs/minix/inode.c Mon Jan 17 16:44:42 2000 +++ gfs/fs/minix/inode.c Sun Dec 24 18:38:32 2000 @@ -26,7 +26,7 @@ #include -static void minix_read_inode(struct inode * inode); +static void minix_read_inode(struct inode * inode, void *opaque); static void minix_write_inode(struct inode * inode); static int minix_statfs(struct super_block *sb, struct statfs *buf, int bufsiz); static int minix_remount (struct super_block * sb, int * flags, char * data); @@ -834,7 +834,7 @@ /* * The global function to read an inode. */ -static void minix_read_inode(struct inode * inode) +static void minix_read_inode(struct inode * inode, void *opaque) { if (INODE_VERSION(inode) == MINIX_V1) V1_minix_read_inode(inode); diff -urN gfs-ref/fs/ncpfs/inode.c gfs/fs/ncpfs/inode.c --- gfs-ref/fs/ncpfs/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/ncpfs/inode.c Sun Dec 24 18:38:32 2000 @@ -31,7 +31,7 @@ #include "ncplib_kernel.h" -static void ncp_read_inode(struct inode *); +static void ncp_read_inode(struct inode *, void *opaque); static void ncp_put_inode(struct inode *); static void ncp_delete_inode(struct inode *); static void ncp_put_super(struct super_block *); @@ -217,7 +217,7 @@ * This is called from iget() with the read semaphore held. * The global ncpfs_file_info structure has been set up by ncp_iget. */ -static void ncp_read_inode(struct inode *inode) +static void ncp_read_inode(struct inode *inode, void *opaque) { if (read_nwinfo == NULL) { printk(KERN_ERR "ncp_read_inode: invalid call\n"); diff -urN gfs-ref/fs/nfs/inode.c gfs/fs/nfs/inode.c --- gfs-ref/fs/nfs/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/nfs/inode.c Sun Dec 24 18:38:32 2000 @@ -46,7 +46,7 @@ static struct inode * __nfs_fhget(struct super_block *, struct nfs_fattr *); -static void nfs_read_inode(struct inode *); +static void nfs_read_inode(struct inode *, void *opaque); static void nfs_put_inode(struct inode *); static void nfs_delete_inode(struct inode *); static int nfs_notify_change(struct dentry *, struct iattr *); @@ -112,7 +112,7 @@ * wrt pipe inodes) */ static void -nfs_read_inode(struct inode * inode) +nfs_read_inode(struct inode * inode, void *opaque) { inode->i_blksize = inode->i_sb->s_blocksize; inode->i_mode = 0; @@ -712,7 +712,7 @@ inode->i_dev = sb->s_dev; inode->i_flags = 0; inode->i_ino = nfs_fattr_to_ino_t(fattr); - nfs_read_inode(inode); + nfs_read_inode(inode, NULL); nfs_fill_inode(inode, fattr); return inode; } diff -urN gfs-ref/fs/ntfs/fs.c gfs/fs/ntfs/fs.c --- gfs-ref/fs/ntfs/fs.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/ntfs/fs.c Sun Dec 24 18:38:32 2000 @@ -690,7 +690,7 @@ * present in the inode table. Typically filesystems have separate * inode_operations for directories, files and symlinks. */ -static void ntfs_read_inode(struct inode* inode) +static void ntfs_read_inode(struct inode* inode, void *opaque) { ntfs_volume *vol; int can_mmap=0; diff -urN gfs-ref/fs/proc/inode.c gfs/fs/proc/inode.c --- gfs-ref/fs/proc/inode.c Tue Sep 5 02:28:49 2000 +++ gfs/fs/proc/inode.c Sun Dec 24 18:38:32 2000 @@ -349,7 +349,7 @@ return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0; } -void proc_read_inode(struct inode * inode) +void proc_read_inode(struct inode * inode, void *opaque) { unsigned long ino, pid; struct task_struct * p; diff -urN gfs-ref/fs/qnx4/inode.c gfs/fs/qnx4/inode.c --- gfs-ref/fs/qnx4/inode.c Thu May 4 13:00:40 2000 +++ gfs/fs/qnx4/inode.c Sun Dec 24 18:38:32 2000 @@ -121,7 +121,7 @@ static struct super_block *qnx4_read_super(struct super_block *, void *, int); static void qnx4_put_super(struct super_block *sb); -static void qnx4_read_inode(struct inode *); +static void qnx4_read_inode(struct inode *, void *opaque); static int qnx4_remount(struct super_block *sb, int *flags, char *data); static int qnx4_statfs(struct super_block *, struct statfs *, int); @@ -411,7 +411,7 @@ return; } -static void qnx4_read_inode(struct inode *inode) +static void qnx4_read_inode(struct inode *inode, void *opaque) { struct buffer_head *bh; struct qnx4_inode_entry *raw_inode; diff -urN gfs-ref/fs/romfs/inode.c gfs/fs/romfs/inode.c --- gfs-ref/fs/romfs/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/romfs/inode.c Sun Dec 24 18:38:32 2000 @@ -605,7 +605,7 @@ }; static void -romfs_read_inode(struct inode *i) +romfs_read_inode(struct inode *i, void *opaque) { int nextfh, ino; struct romfs_inode ri; diff -urN gfs-ref/fs/smbfs/inode.c gfs/fs/smbfs/inode.c --- gfs-ref/fs/smbfs/inode.c Mon Dec 11 16:58:03 2000 +++ gfs/fs/smbfs/inode.c Sun Dec 24 18:38:32 2000 @@ -39,7 +39,7 @@ #define SMB_NLS_REMOTE "" #endif -static void smb_read_inode(struct inode *); +static void smb_read_inode(struct inode *, void *opaque); static void smb_put_inode(struct inode *); static void smb_delete_inode(struct inode *); static void smb_put_super(struct super_block *); @@ -160,7 +160,7 @@ } static void -smb_read_inode(struct inode *inode) +smb_read_inode(struct inode *inode, void *opaque) { /* Now it can be called only by NFS */ /* FIXME! what does that comment mean!? */ diff -urN gfs-ref/fs/sysv/inode.c gfs/fs/sysv/inode.c --- gfs-ref/fs/sysv/inode.c Mon Jan 17 16:44:43 2000 +++ gfs/fs/sysv/inode.c Sun Dec 24 18:38:32 2000 @@ -836,7 +836,7 @@ *(unsigned short *)(p+1) = (unsigned short) val; } -void sysv_read_inode(struct inode * inode) +void sysv_read_inode(struct inode * inode, void *opaque) { struct super_block * sb = inode->i_sb; struct buffer_head * bh; diff -urN gfs-ref/fs/ufs/inode.c gfs/fs/ufs/inode.c --- gfs-ref/fs/ufs/inode.c Sun Dec 24 18:38:20 2000 +++ gfs/fs/ufs/inode.c Sun Dec 24 18:38:32 2000 @@ -448,7 +448,7 @@ return NULL; } -void ufs_read_inode (struct inode * inode) +void ufs_read_inode (struct inode * inode, void *opaque) { struct super_block * sb; struct ufs_sb_private_info * uspi; diff -urN gfs-ref/include/linux/affs_fs.h gfs/include/linux/affs_fs.h --- gfs-ref/include/linux/affs_fs.h Mon Dec 11 17:43:54 2000 +++ gfs/include/linux/affs_fs.h Sun Dec 24 18:38:32 2000 @@ -83,7 +83,7 @@ struct inode *inode, struct dentry *dentry, s32 type); extern void affs_put_inode(struct inode *inode); extern void affs_delete_inode(struct inode *inode); -extern void affs_read_inode(struct inode *inode); +extern void affs_read_inode(struct inode *inode, void *opaque); extern void affs_write_inode(struct inode *inode); /* super.c */ diff -urN gfs-ref/include/linux/efs_fs.h gfs/include/linux/efs_fs.h --- gfs-ref/include/linux/efs_fs.h Sun Dec 24 16:13:36 2000 +++ gfs/include/linux/efs_fs.h Sun Dec 24 18:38:32 2000 @@ -55,7 +55,7 @@ extern void efs_put_super(struct super_block *); extern int efs_statfs(struct super_block *, struct statfs *, int); -extern void efs_read_inode(struct inode *); +extern void efs_read_inode(struct inode *, void *opaque); extern efs_block_t efs_map_block(struct inode *, efs_block_t); extern struct dentry *efs_lookup(struct inode *, struct dentry *); diff -urN gfs-ref/include/linux/ext2_fs.h gfs/include/linux/ext2_fs.h --- gfs-ref/include/linux/ext2_fs.h Mon Dec 11 17:42:03 2000 +++ gfs/include/linux/ext2_fs.h Sun Dec 24 18:38:32 2000 @@ -564,7 +564,7 @@ extern struct buffer_head * ext2_bread (struct inode *, int, int, int *); extern int ext2_getcluster (struct inode * inode, long block); -extern void ext2_read_inode (struct inode *); +extern void ext2_read_inode (struct inode *, void *opaque); extern void ext2_write_inode (struct inode *); extern void ext2_put_inode (struct inode *); extern void ext2_delete_inode (struct inode *); diff -urN gfs-ref/include/linux/fs.h gfs/include/linux/fs.h --- gfs-ref/include/linux/fs.h Sun Dec 24 18:38:20 2000 +++ gfs/include/linux/fs.h Sun Dec 24 18:38:32 2000 @@ -686,7 +686,7 @@ }; struct super_operations { - void (*read_inode) (struct inode *); + void (*read_inode) (struct inode *, void *opaque); void (*write_inode) (struct inode *); void (*put_inode) (struct inode *); void (*delete_inode) (struct inode *); diff -urN gfs-ref/include/linux/msdos_fs.h gfs/include/linux/msdos_fs.h --- gfs-ref/include/linux/msdos_fs.h Sun Dec 24 16:13:36 2000 +++ gfs/include/linux/msdos_fs.h Sun Dec 24 18:38:32 2000 @@ -287,7 +287,7 @@ extern struct super_block *msdos_read_super(struct super_block *sb,void *data, int silent); /* msdos.c - these are for Umsdos */ -extern void msdos_read_inode(struct inode *inode); +extern void msdos_read_inode(struct inode *inode, void *opaque); extern struct dentry *msdos_lookup(struct inode *dir,struct dentry *); extern int msdos_create(struct inode *dir,struct dentry *dentry,int mode); extern int msdos_rmdir(struct inode *dir,struct dentry *dentry); @@ -325,7 +325,7 @@ struct inode *new_dir,struct dentry *new_dentry); extern struct super_block *vfat_read_super(struct super_block *sb,void *data, int silent); -extern void vfat_read_inode(struct inode *inode); +extern void vfat_read_inode(struct inode *inode, void *opaque); extern struct dentry *vfat_lookup(struct inode *dir,struct dentry *); /* vfat/vfatfs_syms.c */ diff -urN gfs-ref/include/linux/proc_fs.h gfs/include/linux/proc_fs.h --- gfs-ref/include/linux/proc_fs.h Sun Dec 24 16:12:10 2000 +++ gfs/include/linux/proc_fs.h Sun Dec 24 18:38:32 2000 @@ -376,7 +376,7 @@ extern int init_proc_fs(void); extern struct inode * proc_get_inode(struct super_block *, int, struct proc_dir_entry *); extern int proc_statfs(struct super_block *, struct statfs *, int); -extern void proc_read_inode(struct inode *); +extern void proc_read_inode(struct inode *, void *opaque); extern void proc_write_inode(struct inode *); extern int proc_permission(struct inode *, int); diff -urN gfs-ref/include/linux/sysv_fs.h gfs/include/linux/sysv_fs.h --- gfs-ref/include/linux/sysv_fs.h Sun Dec 24 16:13:36 2000 +++ gfs/include/linux/sysv_fs.h Sun Dec 24 18:38:32 2000 @@ -395,7 +395,7 @@ extern struct super_block *sysv_read_super(struct super_block *,void *,int); extern int init_sysv_fs(void); extern void sysv_write_super(struct super_block *); -extern void sysv_read_inode(struct inode *); +extern void sysv_read_inode(struct inode *, void *opaque); extern int sysv_notify_change(struct dentry *, struct iattr *); extern void sysv_write_inode(struct inode *); extern int sysv_statfs(struct super_block *, struct statfs *, int); diff -urN gfs-ref/include/linux/ufs_fs.h gfs/include/linux/ufs_fs.h --- gfs-ref/include/linux/ufs_fs.h Sun Dec 24 16:08:57 2000 +++ gfs/include/linux/ufs_fs.h Sun Dec 24 18:38:32 2000 @@ -531,7 +531,7 @@ /* inode.c */ extern int ufs_bmap (struct inode *, int); -extern void ufs_read_inode (struct inode *); +extern void ufs_read_inode (struct inode *, void *opaque); extern void ufs_put_inode (struct inode *); extern void ufs_write_inode (struct inode *); extern int ufs_sync_inode (struct inode *);