diff options
author | Dave Airlie <airlied@linux.ie> | 2006-12-19 22:10:34 +1100 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2006-12-19 22:10:34 +1100 |
commit | 737c73d1a081823f5c95a6fd68173b56a304eae5 (patch) | |
tree | 80fcc0a3cdca71068c1c847ace69b80820f94ca5 | |
parent | bc4c83573111361e9817d6a7414bd84f73ca7cce (diff) |
add kcalloc compat for before 2.6.10
-rw-r--r-- | linux-core/drm_compat.h | 11 | ||||
-rw-r--r-- | linux-core/drm_memory.c | 8 |
2 files changed, 12 insertions, 7 deletions
diff --git a/linux-core/drm_compat.h b/linux-core/drm_compat.h index 49b08865..c7a4a7e3 100644 --- a/linux-core/drm_compat.h +++ b/linux-core/drm_compat.h @@ -107,6 +107,17 @@ static inline int remap_pfn_range(struct vm_area_struct *vma, unsigned long from size, pgprot); } + +static __inline__ void *kcalloc(size_t nmemb, size_t size, int flags) +{ + void *addr; + + addr = kmalloc(size * nmemb, flags); + if (addr != NULL) + memset((void *)addr, 0, size * nmemb); + + return addr; +} #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) diff --git a/linux-core/drm_memory.c b/linux-core/drm_memory.c index 3370c279..10f43f41 100644 --- a/linux-core/drm_memory.c +++ b/linux-core/drm_memory.c @@ -134,13 +134,7 @@ int drm_mem_info(char *buf, char **start, off_t offset, /** Wrapper around kmalloc() */ void *drm_calloc(size_t nmemb, size_t size, int area) { - void *addr; - - addr = kmalloc(size * nmemb, GFP_KERNEL); - if (addr != NULL) - memset((void *)addr, 0, size * nmemb); - - return addr; + return kcalloc(nmemb, size, GFP_KERNEL); } EXPORT_SYMBOL(drm_calloc); |