Skip to contentSkip to conversation

drivers/media/video/videobuf-dma-sg.c: avoid to clear memory twice

PATCH New JAILLET Christophe 1 participant 1 message Jun 8, 2008 Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 drivers/media/video/videobuf-dma-sg.c: avoid to clear memory twice

From: Christophe Jaillet <jaillet.[email protected]>

Hi, here is a patch against linux/drivers/usb/atm/cxacru.c which :

1) Remove a useless initialisation of 'i'
2) Avoid to clear the memory allocated twice (once in 'kcalloc', once in 'sg_init_table')
3) Remove a test that can never trigger. The function returns NULL in such a case, so we know that at this point 'pages[0]' != NULL

---

(quoted diff) +0 -0

b/drivers/media/video/videobuf-dma-sg.c
index 03a7b94..8ed6082 100644

drivers/media/video/videobuf-dma-sg.c +2 -4
@@ -80,17 +80,15 @@ struct scatterlist*
 videobuf_pages_to_sg(struct page **pages, int nr_pages, int offset)
 {
        struct scatterlist *sglist;
-       int i = 0;
+       int i;
 
        if (NULL == pages[0])
                return NULL;
-       sglist = kcalloc(nr_pages, sizeof(*sglist), GFP_KERNEL);
+       sglist = kmalloc(nr_pages * sizeof(*sglist), GFP_KERNEL);
        if (NULL == sglist)
                return NULL;
        sg_init_table(sglist, nr_pages);
 
-       if (NULL == pages[0])
-               goto nopage;
        if (PageHighMem(pages[0]))
                /* DMA to highmem pages might not work */
                goto highmem;