From: Dan Carpenter Date: Fri, 20 Feb 2009 23:38:46 +0000 (-0800) Subject: sx.c: avoid referencing freed memory if copy_from_user() fails X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=b28fe28f2a07ee325834179174a95495d2786561;p=linux-beck.git sx.c: avoid referencing freed memory if copy_from_user() fails The "break" would just result in reusing a free'd pointer. I don't have the cards myself to test it though. :/ Signed-off-by: Dan Carpenter Cc: Ilpo Järvinen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/char/sx.c b/drivers/char/sx.c index d7c416566bd9..518f2a25d91e 100644 --- a/drivers/char/sx.c +++ b/drivers/char/sx.c @@ -1789,7 +1789,7 @@ static long sx_fw_ioctl(struct file *filp, unsigned int cmd, nbytes - i : SX_CHUNK_SIZE)) { kfree(tmp); rc = -EFAULT; - break; + goto out; } memcpy_toio(board->base2 + offset + i, tmp, (i + SX_CHUNK_SIZE > nbytes) ?