linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / fs / hostfs / hostfs_kern.c
index 322e876..b3ad0bd 100644 (file)
@@ -54,7 +54,7 @@ static int append = 0;
 
 static struct inode_operations hostfs_iops;
 static struct inode_operations hostfs_dir_iops;
-static const struct address_space_operations hostfs_link_aops;
+static struct address_space_operations hostfs_link_aops;
 
 #ifndef MODULE
 static int __init hostfs_args(char *options, int *add)
@@ -156,6 +156,7 @@ static int read_name(struct inode *ino, char *name)
        ino->i_mode = i_mode;
        ino->i_nlink = i_nlink;
        ino->i_size = i_size;
+       ino->i_blksize = i_blksize;
        ino->i_blocks = i_blocks;
        return(0);
 }
@@ -238,7 +239,7 @@ static int read_inode(struct inode *ino)
        return(err);
 }
 
-int hostfs_statfs(struct dentry *dentry, struct kstatfs *sf)
+int hostfs_statfs(struct super_block *sb, struct kstatfs *sf)
 {
        /* do_statfs uses struct statfs64 internally, but the linux kernel
         * struct statfs still has 32-bit versions for most of these fields,
@@ -251,7 +252,7 @@ int hostfs_statfs(struct dentry *dentry, struct kstatfs *sf)
        long long f_files;
        long long f_ffree;
 
-       err = do_statfs(HOSTFS_I(dentry->d_sb->s_root->d_inode)->host_filename,
+       err = do_statfs(HOSTFS_I(sb->s_root->d_inode)->host_filename,
                        &sf->f_bsize, &f_blocks, &f_bfree, &f_bavail, &f_files,
                        &f_ffree, &sf->f_fsid, sizeof(sf->f_fsid),
                        &sf->f_namelen, sf->f_spare);
@@ -383,7 +384,7 @@ int hostfs_fsync(struct file *file, struct dentry *dentry, int datasync)
        return fsync_file(HOSTFS_I(dentry->d_inode)->fd, datasync);
 }
 
-static const struct file_operations hostfs_file_fops = {
+static struct file_operations hostfs_file_fops = {
        .llseek         = generic_file_llseek,
        .read           = generic_file_read,
        .sendfile       = generic_file_sendfile,
@@ -398,7 +399,7 @@ static const struct file_operations hostfs_file_fops = {
        .fsync          = hostfs_fsync,
 };
 
-static const struct file_operations hostfs_dir_fops = {
+static struct file_operations hostfs_dir_fops = {
        .llseek         = generic_file_llseek,
        .readdir        = hostfs_readdir,
        .read           = generic_read_dir,
@@ -517,7 +518,7 @@ int hostfs_commit_write(struct file *file, struct page *page, unsigned from,
        return(err);
 }
 
-static const struct address_space_operations hostfs_aops = {
+static struct address_space_operations hostfs_aops = {
        .writepage      = hostfs_writepage,
        .readpage       = hostfs_readpage,
        .set_page_dirty = __set_page_dirty_nobuffers,
@@ -934,7 +935,7 @@ int hostfs_link_readpage(struct file *file, struct page *page)
        return(err);
 }
 
-static const struct address_space_operations hostfs_link_aops = {
+static struct address_space_operations hostfs_link_aops = {
        .readpage       = hostfs_link_readpage,
 };
 
@@ -992,11 +993,11 @@ static int hostfs_fill_sb_common(struct super_block *sb, void *d, int silent)
        return(err);
 }
 
-static int hostfs_read_sb(struct file_system_type *type,
-                         int flags, const char *dev_name,
-                         void *data, struct vfsmount *mnt)
+static struct super_block *hostfs_read_sb(struct file_system_type *type,
+                                            int flags, const char *dev_name,
+                                            void *data)
 {
-       return get_sb_nodev(type, flags, data, hostfs_fill_sb_common, mnt);
+       return(get_sb_nodev(type, flags, data, hostfs_fill_sb_common));
 }
 
 static struct file_system_type hostfs_type = {