OSDN Git Service

cosa: Add missing kfree in error path of cosa_write
authorWang Hai <wanghai38@huawei.com>
Tue, 10 Nov 2020 14:46:14 +0000 (22:46 +0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 12 Nov 2020 01:52:01 +0000 (17:52 -0800)
If memory allocation for 'kbuf' succeed, cosa_write() doesn't have a
corresponding kfree() in exception handling. Thus add kfree() for this
function implementation.

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Wang Hai <wanghai38@huawei.com>
Acked-by: Jan "Yenya" Kasprzak <kas@fi.muni.cz>
Link: https://lore.kernel.org/r/20201110144614.43194-1-wanghai38@huawei.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/wan/cosa.c

index f8aed06..2369ca2 100644 (file)
@@ -889,6 +889,7 @@ static ssize_t cosa_write(struct file *file,
                        chan->tx_status = 1;
                        spin_unlock_irqrestore(&cosa->lock, flags);
                        up(&chan->wsem);
+                       kfree(kbuf);
                        return -ERESTARTSYS;
                }
        }