fat_flush_inodes(inode->i_sb, inode, NULL);
}
+int fat_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
+{
+ struct inode *inode = dentry->d_inode;
+ generic_fillattr(inode, stat);
+ stat->blksize = MSDOS_SB(inode->i_sb)->cluster_size;
+ return 0;
+}
+EXPORT_SYMBOL_GPL(fat_getattr);
+
struct inode_operations fat_file_inode_operations = {
.truncate = fat_truncate,
.setattr = fat_notify_change,
+ .getattr = fat_getattr,
};
.rmdir = msdos_rmdir,
.rename = msdos_rename,
.setattr = fat_notify_change,
+ .getattr = fat_getattr,
};
static int msdos_fill_super(struct super_block *sb, void *data, int silent)
.rmdir = vfat_rmdir,
.rename = vfat_rename,
.setattr = fat_notify_change,
+ .getattr = fat_getattr,
};
static int vfat_fill_super(struct super_block *sb, void *data, int silent)
extern struct inode_operations fat_file_inode_operations;
extern int fat_notify_change(struct dentry * dentry, struct iattr * attr);
extern void fat_truncate(struct inode *inode);
+extern int fat_getattr(struct vfsmount *mnt, struct dentry *dentry,
+ struct kstat *stat);
/* fat/inode.c */
extern void fat_attach(struct inode *inode, loff_t i_pos);