mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Wade <neroz@ii.net>
To: David Yu Chen <dychen@stanford.edu>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: [PATCH] bttv-risc.c (was: Re: [CHECKER] 32 Memory Leaks on Error Paths)
Date: Tue, 16 Sep 2003 17:48:00 +0800	[thread overview]
Message-ID: <3F66DC50.5040806@ii.net> (raw)
In-Reply-To: <200309160435.h8G4ZkQM009953@elaine4.Stanford.EDU>

[-- Attachment #1: Type: text/plain, Size: 1078 bytes --]

David Yu Chen wrote:
> Hi All,
[snip]
> ---------------------------------------------------------
> 
> [FILE:  2.6.0-test5/drivers/media/video/bttv-risc.c]
> [FUNC:  bttv_risc_overlay]
> [LINES: 214-223]
> [VAR:   skips]
>  209:	struct btcx_skiplist *skips;
>  210:	u32 *rp,ri,ra;
>  211:	u32 addr;
>  212:
>  213:	/* skip list for window clipping */
> START -->
>  214:	if (NULL == (skips = kmalloc(sizeof(*skips) * ov->nclips,GFP_KERNEL)))
>  215:		return -ENOMEM;
>  216:	
>  217:	/* estimate risc mem: worst case is (clip+1) * lines instructions
>  218:	   + sync + jump (all 2 dwords) */
>  219:	instructions  = (ov->nclips + 1) *
>  220:		((skip_even || skip_odd) ? ov->w.height>>1 :  ov->w.height);
>  221:	instructions += 2;
>  222:	if ((rc = btcx_riscmem_alloc(btv->dev,risc,instructions*8)) < 0)
> END -->
>  223:		return rc;
>  224:
>  225:	/* sync instruction */
>  226:	rp = risc->cpu;
>  227:	*(rp++) = cpu_to_le32(BT848_RISC_SYNC|BT848_FIFO_STATUS_FM1);
>  228:	*(rp++) = cpu_to_le32(0);
> ---------------------------------------------------------
> 

Correct?



[-- Attachment #2: bttv-risc_memleak.diff --]
[-- Type: text/plain, Size: 547 bytes --]

--- linux-2.6.0-test5.old/drivers/media/video/bttv-risc.c	2003-08-23 07:55:44.000000000 +0800
+++ linux-2.6.0-test5.new/drivers/media/video/bttv-risc.c	2003-09-16 16:48:37.000000000 +0800
@@ -219,8 +219,10 @@
 	instructions  = (ov->nclips + 1) *
 		((skip_even || skip_odd) ? ov->w.height>>1 :  ov->w.height);
 	instructions += 2;
-	if ((rc = btcx_riscmem_alloc(btv->dev,risc,instructions*8)) < 0)
+	if ((rc = btcx_riscmem_alloc(btv->dev,risc,instructions*8)) < 0) {
+		kfree(skips);
 		return rc;
+	}
 
 	/* sync instruction */
 	rp = risc->cpu;

  parent reply	other threads:[~2003-09-16  9:47 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-16  4:35 [CHECKER] 32 Memory Leaks on Error Paths David Yu Chen
2003-09-16  6:40 ` Neil Brown
2003-09-16  6:55 ` Jörn Engel
2003-09-16  7:21   ` [PATCH] fix memleak in fs/jffs2/scan.c (was: re: [CHECKER] 32 Memory Leaks on Error Paths) Jörn Engel
2003-09-16  7:32   ` [CHECKER] 32 Memory Leaks on Error Paths Jörn Engel
2003-09-16  8:51   ` Jörn Engel
2003-09-16 14:52   ` Timothy Miller
2003-09-16 15:02     ` Wade
2003-09-16 15:04     ` Valdis.Kletnieks
2003-09-16 15:04     ` Nick Piggin
2003-09-16  8:45 ` Wade
2003-09-16  8:56   ` Jörn Engel
2003-09-16 12:10   ` Andries Brouwer
2003-09-16  9:07 ` Jörn Engel
2003-09-20  7:58   ` David S. Miller
2003-09-16  9:48 ` Wade [this message]
2003-09-16 10:18 ` [PATCH] fix memleak in emu10k1/midi.c (was: Re: [CHECKER] 32 Memory Leaks on Error Paths) Wade
2003-09-16 12:03 ` [CHECKER] 32 Memory Leaks on Error Paths Andries Brouwer
2003-09-19 23:03 ` Chris Wright
2003-09-19 23:04 ` Chris Wright
2003-09-19 23:04 ` Chris Wright
2003-09-19 23:04 ` Chris Wright
2003-09-23 13:15   ` Stephen Smalley
2003-09-23 18:02     ` Chris Wright
2003-09-22 22:54 ` Chris Wright
2003-09-22 22:55 ` Chris Wright
2003-09-22 22:55 ` Chris Wright
2003-09-23 20:13 ` Chris Wright
2003-09-23 20:25   ` Greg KH
2003-09-23 21:38     ` Chris Wright
2003-09-23 22:14     ` Chris Wright
2003-09-24  0:17       ` Greg KH
2003-09-23 20:14 ` Chris Wright
2003-09-23 20:14 ` Chris Wright
2003-09-23 20:21   ` Jean Tourrilhes
2003-09-23 20:24     ` Chris Wright
2003-09-23 20:14 ` Chris Wright
2003-09-23 20:15 ` Chris Wright
2003-09-24  7:08 ` David Howells

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3F66DC50.5040806@ii.net \
    --to=neroz@ii.net \
    --cc=dychen@stanford.edu \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome