提交 c13e5690 编写于 作者: P Paolo 'Blaisorblade' Giarrusso 提交者: Linus Torvalds

[PATCH] uml: split memory allocation prototypes out of user.h

user.h is too generic a header name.  I've split out allocation routines from
it.
Signed-off-by: NPaolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 02a5323d
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
#include "user_util.h" #include "user_util.h"
#include "os.h" #include "os.h"
#include "user.h" #include "user.h"
#include "um_malloc.h"
static inline void *cow_malloc(int size) static inline void *cow_malloc(int size)
{ {
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
#include "user_util.h" #include "user_util.h"
#include "user.h" #include "user.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
#define MAX_PACKET (ETH_MAX_PACKET + ETH_HEADER_OTHER) #define MAX_PACKET (ETH_MAX_PACKET + ETH_HEADER_OTHER)
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include "user_util.h" #include "user_util.h"
#include "chan_user.h" #include "chan_user.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
struct fd_chan { struct fd_chan {
int fd; int fd;
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include "user_util.h" #include "user_util.h"
#include "user.h" #include "user.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
#define MAX_PACKET (ETH_MAX_PACKET + ETH_HEADER_OTHER) #define MAX_PACKET (ETH_MAX_PACKET + ETH_HEADER_OTHER)
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#include "kern_util.h" #include "kern_util.h"
#include "net_user.h" #include "net_user.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
int tap_open_common(void *dev, char *gate_addr) int tap_open_common(void *dev, char *gate_addr)
{ {
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include "net_user.h" #include "net_user.h"
#include "pcap_user.h" #include "pcap_user.h"
#include "user.h" #include "user.h"
#include "um_malloc.h"
#define MAX_PACKET (ETH_MAX_PACKET + ETH_HEADER_OTHER) #define MAX_PACKET (ETH_MAX_PACKET + ETH_HEADER_OTHER)
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include "chan_user.h" #include "chan_user.h"
#include "port.h" #include "port.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
struct port_chan { struct port_chan {
int raw; int raw;
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include "user_util.h" #include "user_util.h"
#include "kern_util.h" #include "kern_util.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
struct pty_chan { struct pty_chan {
void (*announce)(char *dev_name, int dev); void (*announce)(char *dev_name, int dev);
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#include "slip.h" #include "slip.h"
#include "slip_common.h" #include "slip_common.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
void slip_user_init(void *data, void *dev) void slip_user_init(void *data, void *dev)
{ {
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include "user_util.h" #include "user_util.h"
#include "user.h" #include "user.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
struct tty_chan { struct tty_chan {
char *dev; char *dev;
......
/*
* Copyright (C) 2005 Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
* Licensed under the GPL
*/
#ifndef __UM_MALLOC_H__
#define __UM_MALLOC_H__
extern void *um_kmalloc(int size);
extern void *um_kmalloc_atomic(int size);
extern void kfree(const void *ptr);
extern void *um_vmalloc(int size);
extern void *um_vmalloc_atomic(int size);
extern void vfree(void *ptr);
#endif /* __UM_MALLOC_H__ */
...@@ -11,17 +11,11 @@ extern void panic(const char *fmt, ...) ...@@ -11,17 +11,11 @@ extern void panic(const char *fmt, ...)
extern int printk(const char *fmt, ...) extern int printk(const char *fmt, ...)
__attribute__ ((format (printf, 1, 2))); __attribute__ ((format (printf, 1, 2)));
extern void schedule(void); extern void schedule(void);
extern void *um_kmalloc(int size);
extern void *um_kmalloc_atomic(int size);
extern void kfree(void *ptr);
extern int in_aton(char *str); extern int in_aton(char *str);
extern int open_gdb_chan(void); extern int open_gdb_chan(void);
/* These use size_t, however unsigned long is correct on both i386 and x86_64. */ /* These use size_t, however unsigned long is correct on both i386 and x86_64. */
extern unsigned long strlcpy(char *, const char *, unsigned long); extern unsigned long strlcpy(char *, const char *, unsigned long);
extern unsigned long strlcat(char *, const char *, unsigned long); extern unsigned long strlcat(char *, const char *, unsigned long);
extern void *um_vmalloc(int size);
extern void *um_vmalloc_atomic(int size);
extern void vfree(void *ptr);
#endif #endif
......
...@@ -52,7 +52,6 @@ extern int linux_main(int argc, char **argv); ...@@ -52,7 +52,6 @@ extern int linux_main(int argc, char **argv);
extern void set_cmdline(char *cmd); extern void set_cmdline(char *cmd);
extern void input_cb(void (*proc)(void *), void *arg, int arg_len); extern void input_cb(void (*proc)(void *), void *arg, int arg_len);
extern int get_pty(void); extern int get_pty(void);
extern void *um_kmalloc(int size);
extern int switcheroo(int fd, int prot, void *from, void *to, int size); extern int switcheroo(int fd, int prot, void *from, void *to, int size);
extern void do_exec(int old_pid, int new_pid); extern void do_exec(int old_pid, int new_pid);
extern void tracer_panic(char *msg, ...) extern void tracer_panic(char *msg, ...)
......
...@@ -31,6 +31,7 @@ ...@@ -31,6 +31,7 @@
#include "irq_kern.h" #include "irq_kern.h"
#include "os.h" #include "os.h"
#include "sigio.h" #include "sigio.h"
#include "um_malloc.h"
#include "misc_constants.h" #include "misc_constants.h"
/* /*
......
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
#include "mode.h" #include "mode.h"
#include "mode_kern.h" #include "mode_kern.h"
#include "choose-mode.h" #include "choose-mode.h"
#include "um_malloc.h"
/* This is a per-cpu array. A processor only modifies its entry and it only /* This is a per-cpu array. A processor only modifies its entry and it only
* cares about its entry, so it's OK if another processor is modifying its * cares about its entry, so it's OK if another processor is modifying its
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include "net_user.h" #include "net_user.h"
#include "etap.h" #include "etap.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
#define MAX_PACKET ETH_MAX_PACKET #define MAX_PACKET ETH_MAX_PACKET
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#include "sigio.h" #include "sigio.h"
#include "irq_user.h" #include "irq_user.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
static struct pollfd *pollfds = NULL; static struct pollfd *pollfds = NULL;
static int pollfds_num = 0; static int pollfds_num = 0;
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include "choose-mode.h" #include "choose-mode.h"
#include "uml-config.h" #include "uml-config.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
/* Set in set_stklim, which is called from main and __wrap_malloc. /* Set in set_stklim, which is called from main and __wrap_malloc.
* __wrap_malloc only calls it if main hasn't started. * __wrap_malloc only calls it if main hasn't started.
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include "user_util.h" #include "user_util.h"
#include "sigio.h" #include "sigio.h"
#include "os.h" #include "os.h"
#include "um_malloc.h"
/* Protected by sigio_lock(), also used by sigio_cleanup, which is an /* Protected by sigio_lock(), also used by sigio_cleanup, which is an
* exitcall. * exitcall.
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册