Re: [RFC 1/3] BKL pushdown from do_new_mount() to the filesystems

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jan Blunck <jblunck@xxxxxxx> wrote
> diff --git a/fs/exofs/super.c b/fs/exofs/super.c
> index 9f500de..ea045b8 100644
> --- a/fs/exofs/super.c
> +++ b/fs/exofs/super.c
> @@ -297,9 +297,13 @@ static int exofs_fill_super(struct super_block *sb, void *data, int silent)
>  	struct osd_obj_id obj;
>  	int ret;
>  
> +	lock_kernel();
> +
>  	sbi = kzalloc(sizeof(*sbi), GFP_KERNEL);
> -	if (!sbi)
> +	if (!sbi) {
> +		unlock_kernel();
>  		return -ENOMEM;
> +	}
>  	sb->s_fs_info = sbi;
>  
>  	/* use mount options to fill superblock */
> @@ -399,6 +403,7 @@ static int exofs_fill_super(struct super_block *sb, void *data, int silent)
>  out:
>  	if (or)
>  		osd_end_request(or);
> +	unlock_kernel();
>  	return ret;
>  
>  free_sbi:

You can add the revert of this patch to your series when submitted.
We don't need the BKL in exofs.

Signed-off-by: Boaz Harrosh <bharrosh@xxxxxxxxxxx>

@@ -297,13 +297,9 @@ static int exofs_fill_super(struct super_block *sb, void *data, int silent)
 	struct osd_obj_id obj;
 	int ret;
 
-	lock_kernel();
-
 	sbi = kzalloc(sizeof(*sbi), GFP_KERNEL);
-	if (!sbi) {
-		unlock_kernel();
+	if (!sbi)
 		return -ENOMEM;
-	}
 	sb->s_fs_info = sbi;
 
 	/* use mount options to fill superblock */
@@ -399,7 +403,6 @@ static int exofs_fill_super(struct super_block *sb, void *data, int silent)
 out:
 	if (or)
 		osd_end_request(or);
-	unlock_kernel();
 	return ret;
 
 free_sbi:
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux