]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
Revert "UBIFS: Fix potential integer overflow in allocation"
authorRichard Weinberger <richard@nod.at>
Sun, 1 Jul 2018 21:20:50 +0000 (23:20 +0200)
committerRichard Weinberger <richard@nod.at>
Tue, 14 Aug 2018 22:25:20 +0000 (00:25 +0200)
This reverts commit 353748a359f1821ee934afc579cf04572406b420.
It bypassed the linux-mtd review process and fixes the issue not as it
should.

Cc: Kees Cook <keescook@chromium.org>
Cc: Silvio Cesare <silvio.cesare@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Richard Weinberger <richard@nod.at>
fs/ubifs/journal.c

index c5d9c6136057d9ca19eff64d259d4bc9008045a1..1406765c3ef9c6979ccc195d9c64dc0eff8c8562 100644 (file)
@@ -1288,11 +1288,10 @@ static int truncate_data_node(const struct ubifs_info *c, const struct inode *in
                              int *new_len)
 {
        void *buf;
-       int err, compr_type;
-       u32 dlen, out_len, old_dlen;
+       int err, dlen, compr_type, out_len, old_dlen;
 
        out_len = le32_to_cpu(dn->size);
-       buf = kmalloc_array(out_len, WORST_COMPR_FACTOR, GFP_NOFS);
+       buf = kmalloc(out_len * WORST_COMPR_FACTOR, GFP_NOFS);
        if (!buf)
                return -ENOMEM;