diff options
author | Pekka Enberg <penberg@cs.helsinki.fi> | 2005-09-06 18:18:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-07 19:57:46 -0400 |
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); | |||
291 | int snd_memory_info_init(void); | 291 | int snd_memory_info_init(void); |
292 | int snd_memory_info_done(void); | 292 | int snd_memory_info_done(void); |
293 | void *snd_hidden_kmalloc(size_t size, unsigned int __nocast flags); | 293 | void *snd_hidden_kmalloc(size_t size, unsigned int __nocast flags); |
294 | void *snd_hidden_kzalloc(size_t size, unsigned int __nocast flags); | ||
294 | void *snd_hidden_kcalloc(size_t n, size_t size, unsigned int __nocast flags); | 295 | void *snd_hidden_kcalloc(size_t n, size_t size, unsigned int __nocast flags); |
295 | void snd_hidden_kfree(const void *obj); | 296 | void snd_hidden_kfree(const void *obj); |
296 | void *snd_hidden_vmalloc(unsigned long size); | 297 | void *snd_hidden_vmalloc(unsigned long size); |
297 | void snd_hidden_vfree(void *obj); | 298 | void snd_hidden_vfree(void *obj); |
298 | char *snd_hidden_kstrdup(const char *s, unsigned int __nocast flags); | 299 | char *snd_hidden_kstrdup(const char *s, unsigned int __nocast flags); |
299 | #define kmalloc(size, flags) snd_hidden_kmalloc(size, flags) | 300 | #define kmalloc(size, flags) snd_hidden_kmalloc(size, flags) |
301 | #define kzalloc(size, flags) snd_hidden_kzalloc(size, flags) | ||
300 | #define kcalloc(n, size, flags) snd_hidden_kcalloc(n, size, flags) | 302 | #define kcalloc(n, size, flags) snd_hidden_kcalloc(n, size, flags) |
301 | #define kfree(obj) snd_hidden_kfree(obj) | 303 | #define kfree(obj) snd_hidden_kfree(obj) |
302 | #define vmalloc(size) snd_hidden_vmalloc(size) | 304 | #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) | |||
116 | return _snd_kmalloc(size, flags); | 116 | return _snd_kmalloc(size, flags); |
117 | } | 117 | } |
118 | 118 | ||
119 | void *snd_hidden_kzalloc(size_t size, unsigned int __nocast flags) | ||
120 | { | ||
121 | void *ret = _snd_kmalloc(size, flags); | ||
122 | if (ret) | ||
123 | memset(ret, 0, size); | ||
124 | return ret; | ||
125 | } | ||
126 | EXPORT_SYMBOL(snd_hidden_kzalloc); | ||
127 | |||
119 | void *snd_hidden_kcalloc(size_t n, size_t size, unsigned int __nocast flags) | 128 | void *snd_hidden_kcalloc(size_t n, size_t size, unsigned int __nocast flags) |
120 | { | 129 | { |
121 | void *ret = NULL; | 130 | void *ret = NULL; |
122 | if (n != 0 && size > INT_MAX / n) | 131 | if (n != 0 && size > INT_MAX / n) |
123 | return ret; | 132 | return ret; |
124 | ret = _snd_kmalloc(n * size, flags); | 133 | return snd_hidden_kzalloc(n * size, flags); |
125 | if (ret) | ||
126 | memset(ret, 0, n * size); | ||
127 | return ret; | ||
128 | } | 134 | } |
129 | 135 | ||
130 | void snd_hidden_kfree(const void *obj) | 136 | 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, | |||
2249 | return -ENXIO; | 2249 | return -ENXIO; |
2250 | } | 2250 | } |
2251 | 2251 | ||
2252 | if ((codec = kcalloc(1, sizeof(*codec), GFP_KERNEL)) == NULL) { | 2252 | if ((codec = kzalloc(sizeof(*codec), GFP_KERNEL)) == NULL) { |
2253 | pci_disable_device(pci); | 2253 | pci_disable_device(pci); |
2254 | return -ENOMEM; | 2254 | return -ENOMEM; |
2255 | } | 2255 | } |