]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
cxgb4: fix a memory leak bug
authorWenwen Wang <wenwen@cs.uga.edu>
Tue, 13 Aug 2019 09:18:52 +0000 (04:18 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 10 Sep 2019 09:29:46 +0000 (10:29 +0100)
[ Upstream commit c554336efa9bbc28d6ec14efbee3c7d63c61a34f ]

In blocked_fl_write(), 't' is not deallocated if bitmap_parse_user() fails,
leading to a memory leak bug. To fix this issue, free t before returning
the error.

Signed-off-by: Wenwen Wang <wenwen@cs.uga.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c

index 4269944c5db53b19840f1752793c70bbf6b19c70..129d6095749a49659f03f34ce48575c5d02136b2 100644 (file)
@@ -2673,8 +2673,10 @@ static ssize_t blocked_fl_write(struct file *filp, const char __user *ubuf,
                return -ENOMEM;
 
        err = bitmap_parse_user(ubuf, count, t, adap->sge.egr_sz);
-       if (err)
+       if (err) {
+               kvfree(t);
                return err;
+       }
 
        bitmap_copy(adap->sge.blocked_fl, t, adap->sge.egr_sz);
        t4_free_mem(t);