From: Sanidhya Kashyap Date: Sat, 21 Mar 2015 16:57:50 +0000 (-0400) Subject: hpfs: kstrdup() out of memory handling X-Git-Tag: v3.4.111~100 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a4cdc47f96f44c55cfa5a80ff383db2304dd734;p=thirdparty%2Fkernel%2Fstable.git hpfs: kstrdup() out of memory handling commit ce657611baf902f14ae559ce4e0787ead6712067 upstream. There is a possibility of nothing being allocated to the new_opts in case of memory pressure, therefore return ENOMEM for such case. Signed-off-by: Sanidhya Kashyap Signed-off-by: Mikulas Patocka Signed-off-by: Linus Torvalds [lizf: Backported to 3.4: adjust context] Signed-off-by: Zefan Li --- diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c index 0bf578dbfce7f..0b990b288aff9 100644 --- a/fs/hpfs/super.c +++ b/fs/hpfs/super.c @@ -385,9 +385,13 @@ static int hpfs_remount_fs(struct super_block *s, int *flags, char *data) int o; struct hpfs_sb_info *sbi = hpfs_sb(s); char *new_opts = kstrdup(data, GFP_KERNEL); - + + + if (!new_opts) + return -ENOMEM; + *flags |= MS_NOATIME; - + hpfs_lock(s); lock_super(s); uid = sbi->sb_uid; gid = sbi->sb_gid;