Message ID | alpine.LNX.2.00.1204112239070.2137@swampdragon.chaosbits.net |
---|---|
State | Not Applicable, archived |
Delegated to: | David Miller |
Headers | show |
On 04/11/2012 11:41 PM, Jesper Juhl wrote: > If, in > drivers/net/wireless/ath/ath6kl/debug.c::ath6kl_fwlog_block_read(), > the call to wait_for_completion_interruptible() returns -ERESTARTSYS > then we'll return without freeing the (as yet unused) memory we > allocated for 'buf' - thus leaking it. > > Signed-off-by: Jesper Juhl <jj@chaosbits.net> Thanks, applied to ath6kl.git. Kalle -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/wireless/ath/ath6kl/debug.c b/drivers/net/wireless/ath/ath6kl/debug.c index d01403a..34eb927 100644 --- a/drivers/net/wireless/ath/ath6kl/debug.c +++ b/drivers/net/wireless/ath/ath6kl/debug.c @@ -401,8 +401,10 @@ static ssize_t ath6kl_fwlog_block_read(struct file *file, ret = wait_for_completion_interruptible( &ar->debug.fwlog_completion); - if (ret == -ERESTARTSYS) + if (ret == -ERESTARTSYS) { + vfree(buf); return ret; + } spin_lock(&ar->debug.fwlog_queue.lock); }
If, in drivers/net/wireless/ath/ath6kl/debug.c::ath6kl_fwlog_block_read(), the call to wait_for_completion_interruptible() returns -ERESTARTSYS then we'll return without freeing the (as yet unused) memory we allocated for 'buf' - thus leaking it. Signed-off-by: Jesper Juhl <jj@chaosbits.net> --- drivers/net/wireless/ath/ath6kl/debug.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)