aboutsummaryrefslogtreecommitdiffstats
path: root/fs/fat
diff options
context:
space:
mode:
authorDave Jones <davej@redhat.com>2006-12-12 17:41:41 -0500
committerDave Jones <davej@redhat.com>2006-12-12 17:41:41 -0500
commitc4366889dda8110247be59ca41fddb82951a8c26 (patch)
tree705c1a996bed8fd48ce94ff33ec9fd00f9b94875 /fs/fat
parentdb2fb9db5735cc532fd4fc55e94b9a3c3750378e (diff)
parente1036502e5263851259d147771226161e5ccc85a (diff)
Merge ../linus
Conflicts: drivers/cpufreq/cpufreq.c
Diffstat (limited to 'fs/fat')
-rw-r--r--fs/fat/cache.c6
-rw-r--r--fs/fat/dir.c6
-rw-r--r--fs/fat/file.c15
-rw-r--r--fs/fat/inode.c6
4 files changed, 22 insertions, 11 deletions
diff --git a/fs/fat/cache.c b/fs/fat/cache.c
index 82cc4f59e3..05c2941c74 100644
--- a/fs/fat/cache.c
+++ b/fs/fat/cache.c
@@ -34,9 +34,9 @@ static inline int fat_max_cache(struct inode *inode)
34 return FAT_MAX_CACHE; 34 return FAT_MAX_CACHE;
35} 35}
36 36
37static kmem_cache_t *fat_cache_cachep; 37static struct kmem_cache *fat_cache_cachep;
38 38
39static void init_once(void *foo, kmem_cache_t *cachep, unsigned long flags) 39static void init_once(void *foo, struct kmem_cache *cachep, unsigned long flags)
40{ 40{
41 struct fat_cache *cache = (struct fat_cache *)foo; 41 struct fat_cache *cache = (struct fat_cache *)foo;
42 42
@@ -63,7 +63,7 @@ void fat_cache_destroy(void)
63 63
64static inline struct fat_cache *fat_cache_alloc(struct inode *inode) 64static inline struct fat_cache *fat_cache_alloc(struct inode *inode)
65{ 65{
66 return kmem_cache_alloc(fat_cache_cachep, SLAB_KERNEL); 66 return kmem_cache_alloc(fat_cache_cachep, GFP_KERNEL);
67} 67}
68 68
69static inline void fat_cache_free(struct fat_cache *cache) 69static inline void fat_cache_free(struct fat_cache *cache)
diff --git a/fs/fat/dir.c b/fs/fat/dir.c
index 69c439f443..c16af246d2 100644
--- a/fs/fat/dir.c
+++ b/fs/fat/dir.c
@@ -579,7 +579,7 @@ parse_record:
579 if (!memcmp(de->name, MSDOS_DOT, MSDOS_NAME)) 579 if (!memcmp(de->name, MSDOS_DOT, MSDOS_NAME))
580 inum = inode->i_ino; 580 inum = inode->i_ino;
581 else if (!memcmp(de->name, MSDOS_DOTDOT, MSDOS_NAME)) { 581 else if (!memcmp(de->name, MSDOS_DOTDOT, MSDOS_NAME)) {
582 inum = parent_ino(filp->f_dentry); 582 inum = parent_ino(filp->f_path.dentry);
583 } else { 583 } else {
584 loff_t i_pos = fat_make_i_pos(sb, bh, de); 584 loff_t i_pos = fat_make_i_pos(sb, bh, de);
585 struct inode *tmp = fat_iget(sb, i_pos); 585 struct inode *tmp = fat_iget(sb, i_pos);
@@ -643,7 +643,7 @@ out:
643 643
644static int fat_readdir(struct file *filp, void *dirent, filldir_t filldir) 644static int fat_readdir(struct file *filp, void *dirent, filldir_t filldir)
645{ 645{
646 struct inode *inode = filp->f_dentry->d_inode; 646 struct inode *inode = filp->f_path.dentry->d_inode;
647 return __fat_readdir(inode, filp, dirent, filldir, 0, 0); 647 return __fat_readdir(inode, filp, dirent, filldir, 0, 0);
648} 648}
649 649
@@ -782,7 +782,7 @@ static long fat_compat_dir_ioctl(struct file *file, unsigned cmd,
782 782
783 set_fs(KERNEL_DS); 783 set_fs(KERNEL_DS);
784 lock_kernel(); 784 lock_kernel();
785 ret = fat_dir_ioctl(file->f_dentry->d_inode, file, 785 ret = fat_dir_ioctl(file->f_path.dentry->d_inode, file,
786 cmd, (unsigned long) &d); 786 cmd, (unsigned long) &d);
787 unlock_kernel(); 787 unlock_kernel();
788 set_fs(oldfs); 788 set_fs(oldfs);
diff --git a/fs/fat/file.c b/fs/fat/file.c
index f4b8f8b3fb..c1237b70c1 100644
--- a/fs/fat/file.c
+++ b/fs/fat/file.c
@@ -13,6 +13,7 @@
13#include <linux/smp_lock.h> 13#include <linux/smp_lock.h>
14#include <linux/buffer_head.h> 14#include <linux/buffer_head.h>
15#include <linux/writeback.h> 15#include <linux/writeback.h>
16#include <linux/backing-dev.h>
16#include <linux/blkdev.h> 17#include <linux/blkdev.h>
17 18
18int fat_generic_ioctl(struct inode *inode, struct file *filp, 19int fat_generic_ioctl(struct inode *inode, struct file *filp,
@@ -91,7 +92,7 @@ int fat_generic_ioctl(struct inode *inode, struct file *filp,
91 } 92 }
92 93
93 /* This MUST be done before doing anything irreversible... */ 94 /* This MUST be done before doing anything irreversible... */
94 err = notify_change(filp->f_dentry, &ia); 95 err = notify_change(filp->f_path.dentry, &ia);
95 if (err) 96 if (err)
96 goto up; 97 goto up;
97 98
@@ -118,7 +119,7 @@ static int fat_file_release(struct inode *inode, struct file *filp)
118 if ((filp->f_mode & FMODE_WRITE) && 119 if ((filp->f_mode & FMODE_WRITE) &&
119 MSDOS_SB(inode->i_sb)->options.flush) { 120 MSDOS_SB(inode->i_sb)->options.flush) {
120 fat_flush_inodes(inode->i_sb, inode, NULL); 121 fat_flush_inodes(inode->i_sb, inode, NULL);
121 blk_congestion_wait(WRITE, HZ/10); 122 congestion_wait(WRITE, HZ/10);
122 } 123 }
123 return 0; 124 return 0;
124} 125}
@@ -302,7 +303,17 @@ void fat_truncate(struct inode *inode)
302 fat_flush_inodes(inode->i_sb, inode, NULL); 303 fat_flush_inodes(inode->i_sb, inode, NULL);
303} 304}
304 305
306int fat_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
307{
308 struct inode *inode = dentry->d_inode;
309 generic_fillattr(inode, stat);
310 stat->blksize = MSDOS_SB(inode->i_sb)->cluster_size;
311 return 0;
312}
313EXPORT_SYMBOL_GPL(fat_getattr);
314
305struct inode_operations fat_file_inode_operations = { 315struct inode_operations fat_file_inode_operations = {
306 .truncate = fat_truncate, 316 .truncate = fat_truncate,
307 .setattr = fat_notify_change, 317 .setattr = fat_notify_change,
318 .getattr = fat_getattr,
308}; 319};
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index 78945b53b0..a9e4688582 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -477,12 +477,12 @@ static void fat_put_super(struct super_block *sb)
477 kfree(sbi); 477 kfree(sbi);
478} 478}
479 479
480static kmem_cache_t *fat_inode_cachep; 480static struct kmem_cache *fat_inode_cachep;
481 481
482static struct inode *fat_alloc_inode(struct super_block *sb) 482static struct inode *fat_alloc_inode(struct super_block *sb)
483{ 483{
484 struct msdos_inode_info *ei; 484 struct msdos_inode_info *ei;
485 ei = kmem_cache_alloc(fat_inode_cachep, SLAB_KERNEL); 485 ei = kmem_cache_alloc(fat_inode_cachep, GFP_KERNEL);
486 if (!ei) 486 if (!ei)
487 return NULL; 487 return NULL;
488 return &ei->vfs_inode; 488 return &ei->vfs_inode;
@@ -493,7 +493,7 @@ static void fat_destroy_inode(struct inode *inode)
493 kmem_cache_free(fat_inode_cachep, MSDOS_I(inode)); 493 kmem_cache_free(fat_inode_cachep, MSDOS_I(inode));
494} 494}
495 495
496static void init_once(void * foo, kmem_cache_t * cachep, unsigned long flags) 496static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flags)
497{ 497{
498 struct msdos_inode_info *ei = (struct msdos_inode_info *)foo; 498 struct msdos_inode_info *ei = (struct msdos_inode_info *)foo;
499 499