]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/super.c
h63xx: tsc2101 alsa sound support
[linux-2.6-omap-h63xx.git] / fs / super.c
index eed6c3132905bad2cc660e3e04e095acf1d687c4..e20b5580afd5791818215c6bf1b3b0c6b7eb2559 100644 (file)
@@ -72,7 +72,7 @@ static struct super_block *alloc_super(void)
                INIT_HLIST_HEAD(&s->s_anon);
                INIT_LIST_HEAD(&s->s_inodes);
                init_rwsem(&s->s_umount);
-               sema_init(&s->s_lock, 1);
+               mutex_init(&s->s_lock);
                down_write(&s->s_umount);
                s->s_count = S_BIAS;
                atomic_set(&s->s_active, 1);
@@ -171,6 +171,7 @@ void deactivate_super(struct super_block *s)
        if (atomic_dec_and_lock(&s->s_active, &sb_lock)) {
                s->s_count -= S_BIAS-1;
                spin_unlock(&sb_lock);
+               DQUOT_OFF(s);
                down_write(&s->s_umount);
                fs->kill_sb(s);
                put_filesystem(fs);
@@ -246,8 +247,9 @@ void generic_shutdown_super(struct super_block *sb)
 
                /* Forget any remaining inodes */
                if (invalidate_inodes(sb)) {
-                       printk("VFS: Busy inodes after unmount. "
-                          "Self-destruct in 5 seconds.  Have a nice day...\n");
+                       printk("VFS: Busy inodes after unmount of %s. "
+                          "Self-destruct in 5 seconds.  Have a nice day...\n",
+                          sb->s_id);
                }
 
                unlock_kernel();
@@ -668,9 +670,9 @@ static void bdev_uevent(struct block_device *bdev, enum kobject_action action)
 {
        if (bdev->bd_disk) {
                if (bdev->bd_part)
-                       kobject_uevent(&bdev->bd_part->kobj, action, NULL);
+                       kobject_uevent(&bdev->bd_part->kobj, action);
                else
-                       kobject_uevent(&bdev->bd_disk->kobj, action, NULL);
+                       kobject_uevent(&bdev->bd_disk->kobj, action);
        }
 }
 
@@ -709,8 +711,7 @@ struct super_block *get_sb_bdev(struct file_system_type *fs_type,
 
                s->s_flags = flags;
                strlcpy(s->s_id, bdevname(bdev, b), sizeof(s->s_id));
-               s->s_old_blocksize = block_size(bdev);
-               sb_set_blocksize(s, s->s_old_blocksize);
+               sb_set_blocksize(s, block_size(bdev));
                error = fill_super(s, data, flags & MS_VERBOSE ? 1 : 0);
                if (error) {
                        up_write(&s->s_umount);