Linux Headquarters
[ Register ]
[ About us ] [ Home Page ]

Advertisement
[ Kernel ] [ Documentation ] [ Links ] [ Books ]

Advertisement

Kernel v2.6.25-rc7 /fs/super.c

Filename:/fs/super.c
Lines Added:8
Lines Deleted:5
Also changed in: (Previous) 2.6.25-rc6-git8  2.6.25-rc6-git7  2.6.25-rc6-git6  2.6.25-rc6-git5  2.6.25-rc6-git4  2.6.25-rc6 
(Following) 2.6.25-rc8  2.6.25-rc9  2.6.25  2.6.25-git3  2.6.25-git4  2.6.25-git5 

Location
[  2.6.25-rc7
  [  fs
     o  super.c

Patch

diff --git a/fs/super.c b/fs/super.c
index ceaf2e3..09008db 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -105,6 +105,7 @@ static inline void destroy_super(struct super_block *s)
 {
    security_sb_free(s);
    kfree(s->s_subtype);
+   kfree(s->s_options);
    kfree(s);
 }
 
@@ -555,11 +556,11 @@ out:
 }
 
 /**
- *   mark_files_ro
+ *   mark_files_ro - mark all files read-only
  *   @sb: superblock in question
  *
- *   All files are marked read/only.  We don't care about pending
- *   delete files so this should be used in 'force' mode only
+ *   All files are marked read-only.  We don't care about pending
+ *   delete files so this should be used in 'force' mode only.
  */
 
 static void mark_files_ro(struct super_block *sb)
@@ -603,6 +604,7 @@ int do_remount_sb(struct super_block *sb, int flags, void *data, int force)
          mark_files_ro(sb);
       else if (!fs_may_remount_ro(sb))
          return -EBUSY;
+      DQUOT_OFF(sb);
    }
 
    if (sb->s_op->remount_fs) {
@@ -868,12 +870,12 @@ vfs_kern_mount(struct file_system_type *type, int flags, const char *name, void
    if (!mnt)
       goto out;
 
-   if (data) {
+   if (data && !(type->fs_flags & FS_BINARY_MOUNTDATA)) {
       secdata = alloc_secdata();
       if (!secdata)
          goto out_mnt;
 
-      error = security_sb_copy_data(type, data, secdata);
+      error = security_sb_copy_data(data, secdata);
       if (error)
          goto out_free_secdata;
    }
@@ -943,6 +945,7 @@ do_kern_mount(const char *fstype, int flags, const char *name, void *data)
    put_filesystem(type);
    return mnt;
 }
+EXPORT_SYMBOL_GPL(do_kern_mount);
 
 struct vfsmount *kern_mount_data(struct file_system_type *type, void *data)
 {


Comments: webmaster (at) linuxhq.com.
Advertising: banners (at) linuxhq.com.
Compilation ©1998-2008 Linux Headquarters, Inc.