summaryrefslogtreecommitdiffstats
path: root/fs/befs
diff options
context:
space:
mode:
authorLuis de Bethencourt2016-07-23 14:36:42 +0200
committerLuis de Bethencourt2016-10-08 11:01:10 +0200
commit173b066f5826e8eca9b67e8091cab67fcda74f2f (patch)
tree3b0253b2a43b5bcb782fae892535614bdb6e255f /fs/befs
parentfs: befs: remove useless pr_err in befs_init_inodecache() (diff)
downloadkernel-qcow2-linux-173b066f5826e8eca9b67e8091cab67fcda74f2f.tar.gz
kernel-qcow2-linux-173b066f5826e8eca9b67e8091cab67fcda74f2f.tar.xz
kernel-qcow2-linux-173b066f5826e8eca9b67e8091cab67fcda74f2f.zip
befs: check return of sb_min_blocksize
Confirm sb_min_blocksize() succeeded before continuing. Link: http://lkml.kernel.org/r/1465700235-22881-1-git-send-email-luisbg@osg.samsung.com Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'fs/befs')
-rw-r--r--fs/befs/linuxvfs.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/befs/linuxvfs.c b/fs/befs/linuxvfs.c
index c734f21fd581..453bb68da219 100644
--- a/fs/befs/linuxvfs.c
+++ b/fs/befs/linuxvfs.c
@@ -756,6 +756,7 @@ befs_fill_super(struct super_block *sb, void *data, int silent)
long ret = -EINVAL;
const unsigned long sb_block = 0;
const off_t x86_sb_off = 512;
+ int blocksize;
save_mount_options(sb, data);
@@ -788,7 +789,11 @@ befs_fill_super(struct super_block *sb, void *data, int silent)
* least 1k to get the second 512 bytes of the volume.
* -WD 10-26-01
*/
- sb_min_blocksize(sb, 1024);
+ blocksize = sb_min_blocksize(sb, 1024);
+ if (!blocksize) {
+ befs_error(sb, "unable to set blocksize");
+ goto unacquire_priv_sbp;
+ }
if (!(bh = sb_bread(sb, sb_block))) {
if (!silent)