]>
Commit | Line | Data |
---|---|---|
16f4a92c BB |
1 | Required missing symbols for FC11 kernels (2.6.29.4-167.fc11.x86_64) |
2 | ||
3 | * get_vmalloc_info() | |
4 | There is no clean API in the kernel for modules to check the virtual | |
5 | memory state of the system. This information is available in user | |
6 | space under /proc/meminfo and the details for every virtual memory | |
7 | node are available under /proc/vmallocinfo. | |
8 | ||
9 | * groups_search() | |
10 | This support is easily replicated if the symbol is not provided by the | |
11 | kernel. However exporting the symbol from the kernel is preferable. | |
12 | This is required by the solaris credential API. | |
13 | ||
14 | * task_curr() | |
15 | This symbol is used by the solaris adaptive mutex implementation. If | |
16 | unavailable then all solaris mutexs behave strictly like linux style | |
17 | semaphones. If available then the mutex may spin for a short while, | |
18 | rather than sleep, if the holder of the lock is currently executing. | |
19 | ||
20 | * first_online_pgdat() | |
21 | * next_online_pgdat() | |
22 | * next_zone() | |
23 | Required helper functions for the zone iterators for_each_zone() and | |
24 | for_each_populated_zone(). These symbols were previously available | |
25 | in 2.6.17 kernels, marked unused in 2.6.18 kernels, and removed as | |
26 | of the 2.6.19 kernel series. The information is available in user | |
27 | space under /proc/zoneinfo. | |
28 | ||
29 | diff --git a/fs/proc/mmu.c b/fs/proc/mmu.c | |
30 | index 8ae221d..081c7b5 100644 | |
31 | --- a/fs/proc/mmu.c | |
32 | +++ b/fs/proc/mmu.c | |
33 | @@ -58,3 +58,4 @@ void get_vmalloc_info(struct vmalloc_info *vmi) | |
34 | read_unlock(&vmlist_lock); | |
35 | } | |
36 | } | |
37 | +EXPORT_SYMBOL(get_vmalloc_info); | |
38 | diff --git a/kernel/groups.c b/kernel/groups.c | |
39 | index 2b45b2e..24b62f8 100644 | |
40 | --- a/kernel/groups.c | |
41 | +++ b/kernel/groups.c | |
42 | @@ -153,6 +153,7 @@ int groups_search(const struct group_info *group_info, gid_t grp) | |
43 | } | |
44 | return 0; | |
45 | } | |
46 | +EXPORT_SYMBOL(groups_search); | |
47 | ||
48 | /** | |
49 | * set_groups - Change a group subscription in a set of credentials | |
50 | diff --git a/kernel/sched.c b/kernel/sched.c | |
51 | index 1b59e26..8728c52 100644 | |
52 | --- a/kernel/sched.c | |
53 | +++ b/kernel/sched.c | |
54 | @@ -1883,10 +1883,11 @@ static void deactivate_task(struct rq *rq, struct task_struct *p, int sleep) | |
55 | * task_curr - is this task currently executing on a CPU? | |
56 | * @p: the task in question. | |
57 | */ | |
58 | -inline int task_curr(const struct task_struct *p) | |
59 | +task_curr(const struct task_struct *p) | |
60 | { | |
61 | return cpu_curr(task_cpu(p)) == p; | |
62 | } | |
63 | +EXPORT_SYMBOL(task_curr); | |
64 | ||
65 | static inline void __set_task_cpu(struct task_struct *p, unsigned int cpu) | |
66 | { | |
67 | diff --git a/mm/mmzone.c b/mm/mmzone.c | |
68 | index f5b7d17..1468a22 100644 | |
69 | --- a/mm/mmzone.c | |
70 | +++ b/mm/mmzone.c | |
71 | @@ -14,6 +14,7 @@ struct pglist_data *first_online_pgdat(void) | |
72 | { | |
73 | return NODE_DATA(first_online_node); | |
74 | } | |
75 | +EXPORT_SYMBOL(first_online_pgdat); | |
76 | ||
77 | struct pglist_data *next_online_pgdat(struct pglist_data *pgdat) | |
78 | { | |
79 | @@ -23,6 +24,7 @@ struct pglist_data *next_online_pgdat(struct pglist_data *pgdat) | |
80 | return NULL; | |
81 | return NODE_DATA(nid); | |
82 | } | |
83 | +EXPORT_SYMBOL(next_online_pgdat); | |
84 | ||
85 | /* | |
86 | * next_zone - helper magic for for_each_zone() | |
87 | @@ -42,6 +44,7 @@ struct zone *next_zone(struct zone *zone) | |
88 | } | |
89 | return zone; | |
90 | } | |
91 | +EXPORT_SYMBOL(next_zone); | |
92 | ||
93 | static inline int zref_in_nodemask(struct zoneref *zref, nodemask_t *nodes) | |
94 | { | |
e811949a BB |
95 | diff --git a/kernel/fork.c b/kernel/fork.c |
96 | index 9b42695..852499e 100644 | |
97 | --- a/kernel/fork.c | |
98 | +++ b/kernel/fork.c | |
99 | @@ -159,6 +159,7 @@ void __put_task_struct(struct task_struct *tsk) | |
100 | if (!profile_handoff_task(tsk)) | |
101 | free_task(tsk); | |
102 | } | |
103 | +EXPORT_SYMBOL(__put_task_struct); | |
104 | ||
105 | /* | |
106 | * macro override instead of weak attribute alias, to workaround |