From 0fb124ed5a51403b043d22b4a6c2824a804cb311 Mon Sep 17 00:00:00 2001 From: Thomas Schoebel-Theuer Date: Wed, 26 Jun 2013 14:45:07 +0200 Subject: [PATCH] mars: generic pre-patch for mars Mostly introduces missing EXPORT_SYMBOL(). Should have exactly zero impact onto the kernel. This is the generic version which exports all sys_*() system calls. This should not introduce any additional maintenance pain because that interfaces has to be stable anyway due to POSIX etc. --- fs/open.c | 1 - fs/utimes.c | 2 ++ include/linux/syscalls.h | 4 ++++ include/uapi/linux/major.h | 1 + mm/page_alloc.c | 2 ++ mm/swap_state.c | 1 + 6 files changed, 10 insertions(+), 1 deletion(-) diff --git a/fs/open.c b/fs/open.c index 6835446..9434a7e 100644 --- a/fs/open.c +++ b/fs/open.c @@ -1065,7 +1065,6 @@ SYSCALL_DEFINE1(close, unsigned int, fd) return retval; } -EXPORT_SYMBOL(sys_close); /* * This routine simulates a hangup on the tty, to arrange that users diff --git a/fs/utimes.c b/fs/utimes.c index f4fb7ec..6afbba8 100644 --- a/fs/utimes.c +++ b/fs/utimes.c @@ -1,3 +1,4 @@ +#include #include #include #include @@ -174,6 +175,7 @@ retry: out: return error; } +EXPORT_SYMBOL(do_utimes); SYSCALL_DEFINE4(utimensat, int, dfd, const char __user *, filename, struct timespec __user *, utimes, int, flags) diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index 313a8e0..80d2ed9 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h @@ -74,6 +74,7 @@ struct sigaltstack; #include #include #include +#include #include #include #include @@ -242,12 +243,15 @@ extern struct trace_event_functions exit_syscall_print_funcs; return (long) SYSC##name(__SC_CAST##x(__VA_ARGS__)); \ } \ SYSCALL_ALIAS(sys##name, SyS##name); \ + EXPORT_SYMBOL(sys##name); \ static inline long SYSC##name(__SC_DECL##x(__VA_ARGS__)) #else /* CONFIG_HAVE_SYSCALL_WRAPPERS */ #define SYSCALL_DEFINE(name) asmlinkage long sys_##name #define __SYSCALL_DEFINEx(x, name, ...) \ + asmlinkage long sys##name(__SC_DECL##x(__VA_ARGS__)); \ + EXPORT_SYMBOL(sys##name); \ asmlinkage long sys##name(__SC_DECL##x(__VA_ARGS__)) #endif /* CONFIG_HAVE_SYSCALL_WRAPPERS */ diff --git a/include/uapi/linux/major.h b/include/uapi/linux/major.h index 6a8ca98..faf6692 100644 --- a/include/uapi/linux/major.h +++ b/include/uapi/linux/major.h @@ -146,6 +146,7 @@ #define UNIX98_PTY_SLAVE_MAJOR (UNIX98_PTY_MASTER_MAJOR+UNIX98_PTY_MAJOR_COUNT) #define DRBD_MAJOR 147 +#define MARS_MAJOR 148 #define RTF_MAJOR 150 #define RAW_MAJOR 162 diff --git a/mm/page_alloc.c b/mm/page_alloc.c index ab62b75..eaee209 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -196,6 +196,7 @@ static char * const zone_names[MAX_NR_ZONES] = { }; int min_free_kbytes = 1024; +EXPORT_SYMBOL(min_free_kbytes); static unsigned long __meminitdata nr_kernel_pages; static unsigned long __meminitdata nr_all_pages; @@ -5305,6 +5306,7 @@ static void __setup_per_zone_wmarks(void) /* update totalreserve_pages */ calculate_totalreserve_pages(); } +EXPORT_SYMBOL(setup_per_zone_wmarks); /** * setup_per_zone_wmarks - called when min_free_kbytes changes diff --git a/mm/swap_state.c b/mm/swap_state.c index 44574ce..2d8fefb 100644 --- a/mm/swap_state.c +++ b/mm/swap_state.c @@ -43,6 +43,7 @@ struct address_space swapper_spaces[MAX_SWAPFILES] = { .backing_dev_info = &swap_backing_dev_info, } }; +EXPORT_SYMBOL(swapper_space); #define INC_CACHE_INFO(x) do { swap_cache_info.x++; } while (0) -- 1.9.3