aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/include
diff options
context:
space:
mode:
authorJeff Dike <jdike@addtoit.com>2007-07-16 02:38:56 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-16 12:05:38 -0400
commite4c4bf9968cb4f0fceb1b8fb54790ccae73caf4e (patch)
treefe9892123214821c37a7b615fe52db7f6d46e148 /arch/um/include
parentc43990162fc7f9d2f15a12797fdc6f9c0905f704 (diff)
uml: Eliminate kernel allocator wrappers
UML had two wrapper procedures for kmalloc, um_kmalloc and um_kmalloc_atomic because the flag constants weren't available in userspace code. kern_constants.h had made kernel constants available for a long time, so there is no need for these wrappers any more. Rather, userspace code calls kmalloc directly with the userspace versions of the gfp flags. kmalloc isn't a real procedure, so I had to essentially copy the inline wrapper around __kmalloc. vmalloc also had its own wrapper for no good reason. This is now gone. Signed-off-by: Jeff Dike <jdike@linux.intel.com> Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/um/include')
-rw-r--r--arch/um/include/common-offsets.h3
-rw-r--r--arch/um/include/um_malloc.h12
2 files changed, 12 insertions, 3 deletions
diff --git a/arch/um/include/common-offsets.h b/arch/um/include/common-offsets.h
index 7376ee44e330..6eee343e53eb 100644
--- a/arch/um/include/common-offsets.h
+++ b/arch/um/include/common-offsets.h
@@ -27,6 +27,9 @@ DEFINE(UM_ELFCLASS64, ELFCLASS64);
27 27
28DEFINE(UM_NR_CPUS, NR_CPUS); 28DEFINE(UM_NR_CPUS, NR_CPUS);
29 29
30DEFINE(UM_GFP_KERNEL, GFP_KERNEL);
31DEFINE(UM_GFP_ATOMIC, GFP_ATOMIC);
32
30/* For crypto assembler code. */ 33/* For crypto assembler code. */
31DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx)); 34DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
32 35
diff --git a/arch/um/include/um_malloc.h b/arch/um/include/um_malloc.h
index e6d7c5aa3f4e..0ad17cb83d96 100644
--- a/arch/um/include/um_malloc.h
+++ b/arch/um/include/um_malloc.h
@@ -6,11 +6,17 @@
6#ifndef __UM_MALLOC_H__ 6#ifndef __UM_MALLOC_H__
7#define __UM_MALLOC_H__ 7#define __UM_MALLOC_H__
8 8
9extern void *um_kmalloc(int size); 9#include "kern_constants.h"
10extern void *um_kmalloc_atomic(int size); 10
11extern void *__kmalloc(int size, int flags);
12static inline void *kmalloc(int size, int flags)
13{
14 return __kmalloc(size, flags);
15}
16
11extern void kfree(const void *ptr); 17extern void kfree(const void *ptr);
12 18
13extern void *um_vmalloc(int size); 19extern void *vmalloc(unsigned long size);
14extern void vfree(void *ptr); 20extern void vfree(void *ptr);
15 21
16#endif /* __UM_MALLOC_H__ */ 22#endif /* __UM_MALLOC_H__ */