diff options
author | Pekka Enberg <penberg@cs.helsinki.fi> | 2005-09-06 15:18:36 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-07 16:57:46 -0700 |
commit | 8db08ea7e6527eff82d8e45507468003e3cefba3 (patch) | |
tree | 604c0607e3767b1801e2547a3f0f2a06aebe92c4 | |
parent | e915fc497a8da551f32b7e5fda687eb4a10bc23b (diff) |
[PATCH] ALSA: convert kcalloc to kzalloc
This patch introduces a memory-leak tracking version of kzalloc for ALSA.
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Cc: Jaroslav Kysela <perex@suse.cz>
Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | include/sound/core.h | 2 | ||||
-rw-r--r-- | sound/core/memory.c | 14 | ||||
-rw-r--r-- | sound/pci/ali5451/ali5451.c | 2 |
3 files changed, 13 insertions, 5 deletions
diff --git a/include/sound/core.h b/include/sound/core.h index f72b3ef515e2..3dc41fd5c54d 100644 --- a/include/sound/core.h +++ b/include/sound/core.h @@ -291,12 +291,14 @@ void snd_memory_done(void); int snd_memory_info_init(void); int snd_memory_info_done(void); void *snd_hidden_kmalloc(size_t size, unsigned int __nocast flags); +void *snd_hidden_kzalloc(size_t size, unsigned int __nocast flags); void *snd_hidden_kcalloc(size_t n, size_t size, unsigned int __nocast flags); void snd_hidden_kfree(const void *obj); void *snd_hidden_vmalloc(unsigned long size); void snd_hidden_vfree(void *obj); char *snd_hidden_kstrdup(const char *s, unsigned int __nocast flags); #define kmalloc(size, flags) snd_hidden_kmalloc(size, flags) +#define kzalloc(size, flags) snd_hidden_kzalloc(size, flags) #define kcalloc(n, size, flags) snd_hidden_kcalloc(n, size, flags) #define kfree(obj) snd_hidden_kfree(obj) #define vmalloc(size) snd_hidden_vmalloc(size) diff --git a/sound/core/memory.c b/sound/core/memory.c index 1622893d00a2..291b4769bde3 100644 --- a/sound/core/memory.c +++ b/sound/core/memory.c @@ -116,15 +116,21 @@ void *snd_hidden_kmalloc(size_t size, unsigned int __nocast flags) return _snd_kmalloc(size, flags); } +void *snd_hidden_kzalloc(size_t size, unsigned int __nocast flags) +{ + void *ret = _snd_kmalloc(size, flags); + if (ret) + memset(ret, 0, size); + return ret; +} +EXPORT_SYMBOL(snd_hidden_kzalloc); + void *snd_hidden_kcalloc(size_t n, size_t size, unsigned int __nocast flags) { void *ret = NULL; if (n != 0 && size > INT_MAX / n) return ret; - ret = _snd_kmalloc(n * size, flags); - if (ret) - memset(ret, 0, n * size); - return ret; + return snd_hidden_kzalloc(n * size, flags); } void snd_hidden_kfree(const void *obj) diff --git a/sound/pci/ali5451/ali5451.c b/sound/pci/ali5451/ali5451.c index ce6c9fadb594..4943299cf137 100644 --- a/sound/pci/ali5451/ali5451.c +++ b/sound/pci/ali5451/ali5451.c @@ -2249,7 +2249,7 @@ static int __devinit snd_ali_create(snd_card_t * card, return -ENXIO; } - if ((codec = kcalloc(1, sizeof(*codec), GFP_KERNEL)) == NULL) { + if ((codec = kzalloc(sizeof(*codec), GFP_KERNEL)) == NULL) { pci_disable_device(pci); return -ENOMEM; } |