aboutsummaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
authorJaroslav Kysela <perex@suse.cz>2004-08-26 20:12:16 +0200
committerJaroslav Kysela <perex@suse.cz>2004-08-26 20:12:16 +0200
commitd7b78ec28bff65441546f13f3b4c134ce933a6de (patch)
tree997dea68188955509cb364d6c7529d017ebdfe16 /mm
parent4bc71c44b21fec10a18064042c118c51fc9490b5 (diff)
parente14dc8b648f798c341e35fdcd4d41348519fe46f (diff)
downloadhistory-d7b78ec28bff65441546f13f3b4c134ce933a6de.tar.gz
Merge suse.cz:/home/perex/bk/linux-sound/linux-2.5
into suse.cz:/home/perex/bk/linux-sound/linux-sound
Diffstat (limited to 'mm')
-rw-r--r--mm/slab.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/mm/slab.c b/mm/slab.c
index 887bec4dde632d..beea1285eb7d90 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -2479,6 +2479,27 @@ void kmem_cache_free (kmem_cache_t *cachep, void *objp)
EXPORT_SYMBOL(kmem_cache_free);
/**
+ * kcalloc - allocate memory for an array. The memory is set to zero.
+ * @n: number of elements.
+ * @size: element size.
+ * @flags: the type of memory to allocate.
+ */
+void *kcalloc(size_t n, size_t size, int flags)
+{
+ void *ret = NULL;
+
+ if (n != 0 && size > INT_MAX / n)
+ return ret;
+
+ ret = kmalloc(n * size, flags);
+ if (ret)
+ memset(ret, 0, n * size);
+ return ret;
+}
+
+EXPORT_SYMBOL(kcalloc);
+
+/**
* kfree - free previously allocated memory
* @objp: pointer returned by kmalloc.
*