git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
sound
/
core
/
sgbuf.c
diff --git
a/sound/core/sgbuf.c
b/sound/core/sgbuf.c
index
c30669f
..
74745da
100644
(file)
--- a/
sound/core/sgbuf.c
+++ b/
sound/core/sgbuf.c
@@
-19,6
+19,7
@@
*
*/
*
*/
+#include <linux/config.h>
#include <linux/slab.h>
#include <linux/mm.h>
#include <linux/vmalloc.h>
#include <linux/slab.h>
#include <linux/mm.h>
#include <linux/vmalloc.h>
@@
-68,18
+69,21
@@
void *snd_malloc_sgbuf_pages(struct device *device,
dmab->area = NULL;
dmab->addr = 0;
dmab->area = NULL;
dmab->addr = 0;
- dmab->private_data = sgbuf = k
z
alloc(sizeof(*sgbuf), GFP_KERNEL);
+ dmab->private_data = sgbuf = k
m
alloc(sizeof(*sgbuf), GFP_KERNEL);
if (! sgbuf)
return NULL;
if (! sgbuf)
return NULL;
+ memset(sgbuf, 0, sizeof(*sgbuf));
sgbuf->dev = device;
pages = snd_sgbuf_aligned_pages(size);
sgbuf->tblsize = sgbuf_align_table(pages);
sgbuf->dev = device;
pages = snd_sgbuf_aligned_pages(size);
sgbuf->tblsize = sgbuf_align_table(pages);
- sgbuf->table = k
calloc(sgbuf->tblsize, sizeof(*sgbuf->table)
, GFP_KERNEL);
+ sgbuf->table = k
malloc(sizeof(*sgbuf->table) * sgbuf->tblsize
, GFP_KERNEL);
if (! sgbuf->table)
goto _failed;
if (! sgbuf->table)
goto _failed;
- sgbuf->page_table = kcalloc(sgbuf->tblsize, sizeof(*sgbuf->page_table), GFP_KERNEL);
+ memset(sgbuf->table, 0, sizeof(*sgbuf->table) * sgbuf->tblsize);
+ sgbuf->page_table = kmalloc(sizeof(*sgbuf->page_table) * sgbuf->tblsize, GFP_KERNEL);
if (! sgbuf->page_table)
goto _failed;
if (! sgbuf->page_table)
goto _failed;
+ memset(sgbuf->page_table, 0, sizeof(*sgbuf->page_table) * sgbuf->tblsize);
/* allocate each page */
for (i = 0; i < pages; i++) {
/* allocate each page */
for (i = 0; i < pages; i++) {