提交 6c144d31 编写于 作者: N NeilBrown

md: move EXPORT_SYMBOL to after function in md.c

Signed-off-by: NNeilBrown <neilb@suse.de>
上级 2cbbca5e
...@@ -6601,6 +6601,7 @@ void md_wakeup_thread(struct md_thread *thread) ...@@ -6601,6 +6601,7 @@ void md_wakeup_thread(struct md_thread *thread)
wake_up(&thread->wqueue); wake_up(&thread->wqueue);
} }
} }
EXPORT_SYMBOL(md_wakeup_thread);
struct md_thread *md_register_thread(void (*run) (struct md_thread *), struct md_thread *md_register_thread(void (*run) (struct md_thread *),
struct mddev *mddev, const char *name) struct mddev *mddev, const char *name)
...@@ -6626,6 +6627,7 @@ struct md_thread *md_register_thread(void (*run) (struct md_thread *), ...@@ -6626,6 +6627,7 @@ struct md_thread *md_register_thread(void (*run) (struct md_thread *),
} }
return thread; return thread;
} }
EXPORT_SYMBOL(md_register_thread);
void md_unregister_thread(struct md_thread **threadp) void md_unregister_thread(struct md_thread **threadp)
{ {
...@@ -6643,6 +6645,7 @@ void md_unregister_thread(struct md_thread **threadp) ...@@ -6643,6 +6645,7 @@ void md_unregister_thread(struct md_thread **threadp)
kthread_stop(thread->tsk); kthread_stop(thread->tsk);
kfree(thread); kfree(thread);
} }
EXPORT_SYMBOL(md_unregister_thread);
void md_error(struct mddev *mddev, struct md_rdev *rdev) void md_error(struct mddev *mddev, struct md_rdev *rdev)
{ {
...@@ -6662,6 +6665,7 @@ void md_error(struct mddev *mddev, struct md_rdev *rdev) ...@@ -6662,6 +6665,7 @@ void md_error(struct mddev *mddev, struct md_rdev *rdev)
queue_work(md_misc_wq, &mddev->event_work); queue_work(md_misc_wq, &mddev->event_work);
md_new_event_inintr(mddev); md_new_event_inintr(mddev);
} }
EXPORT_SYMBOL(md_error);
/* seq_file implementation /proc/mdstat */ /* seq_file implementation /proc/mdstat */
...@@ -6990,6 +6994,7 @@ int register_md_personality(struct md_personality *p) ...@@ -6990,6 +6994,7 @@ int register_md_personality(struct md_personality *p)
spin_unlock(&pers_lock); spin_unlock(&pers_lock);
return 0; return 0;
} }
EXPORT_SYMBOL(register_md_personality);
int unregister_md_personality(struct md_personality *p) int unregister_md_personality(struct md_personality *p)
{ {
...@@ -6999,6 +7004,7 @@ int unregister_md_personality(struct md_personality *p) ...@@ -6999,6 +7004,7 @@ int unregister_md_personality(struct md_personality *p)
spin_unlock(&pers_lock); spin_unlock(&pers_lock);
return 0; return 0;
} }
EXPORT_SYMBOL(unregister_md_personality);
static int is_mddev_idle(struct mddev *mddev, int init) static int is_mddev_idle(struct mddev *mddev, int init)
{ {
...@@ -7056,6 +7062,7 @@ void md_done_sync(struct mddev *mddev, int blocks, int ok) ...@@ -7056,6 +7062,7 @@ void md_done_sync(struct mddev *mddev, int blocks, int ok)
// stop recovery, signal do_sync .... // stop recovery, signal do_sync ....
} }
} }
EXPORT_SYMBOL(md_done_sync);
/* md_write_start(mddev, bi) /* md_write_start(mddev, bi)
* If we need to update some array metadata (e.g. 'active' flag * If we need to update some array metadata (e.g. 'active' flag
...@@ -7096,6 +7103,7 @@ void md_write_start(struct mddev *mddev, struct bio *bi) ...@@ -7096,6 +7103,7 @@ void md_write_start(struct mddev *mddev, struct bio *bi)
wait_event(mddev->sb_wait, wait_event(mddev->sb_wait,
!test_bit(MD_CHANGE_PENDING, &mddev->flags)); !test_bit(MD_CHANGE_PENDING, &mddev->flags));
} }
EXPORT_SYMBOL(md_write_start);
void md_write_end(struct mddev *mddev) void md_write_end(struct mddev *mddev)
{ {
...@@ -7106,6 +7114,7 @@ void md_write_end(struct mddev *mddev) ...@@ -7106,6 +7114,7 @@ void md_write_end(struct mddev *mddev)
mod_timer(&mddev->safemode_timer, jiffies + mddev->safemode_delay); mod_timer(&mddev->safemode_timer, jiffies + mddev->safemode_delay);
} }
} }
EXPORT_SYMBOL(md_write_end);
/* md_allow_write(mddev) /* md_allow_write(mddev)
* Calling this ensures that the array is marked 'active' so that writes * Calling this ensures that the array is marked 'active' so that writes
...@@ -7758,6 +7767,7 @@ void md_check_recovery(struct mddev *mddev) ...@@ -7758,6 +7767,7 @@ void md_check_recovery(struct mddev *mddev)
mddev_unlock(mddev); mddev_unlock(mddev);
} }
} }
EXPORT_SYMBOL(md_check_recovery);
void md_reap_sync_thread(struct mddev *mddev) void md_reap_sync_thread(struct mddev *mddev)
{ {
...@@ -7800,6 +7810,7 @@ void md_reap_sync_thread(struct mddev *mddev) ...@@ -7800,6 +7810,7 @@ void md_reap_sync_thread(struct mddev *mddev)
if (mddev->event_work.func) if (mddev->event_work.func)
queue_work(md_misc_wq, &mddev->event_work); queue_work(md_misc_wq, &mddev->event_work);
} }
EXPORT_SYMBOL(md_reap_sync_thread);
void md_wait_for_blocked_rdev(struct md_rdev *rdev, struct mddev *mddev) void md_wait_for_blocked_rdev(struct md_rdev *rdev, struct mddev *mddev)
{ {
...@@ -8526,20 +8537,8 @@ static int set_ro(const char *val, struct kernel_param *kp) ...@@ -8526,20 +8537,8 @@ static int set_ro(const char *val, struct kernel_param *kp)
module_param_call(start_ro, set_ro, get_ro, NULL, S_IRUSR|S_IWUSR); module_param_call(start_ro, set_ro, get_ro, NULL, S_IRUSR|S_IWUSR);
module_param(start_dirty_degraded, int, S_IRUGO|S_IWUSR); module_param(start_dirty_degraded, int, S_IRUGO|S_IWUSR);
module_param_call(new_array, add_named_array, NULL, NULL, S_IWUSR); module_param_call(new_array, add_named_array, NULL, NULL, S_IWUSR);
EXPORT_SYMBOL(register_md_personality);
EXPORT_SYMBOL(unregister_md_personality);
EXPORT_SYMBOL(md_error);
EXPORT_SYMBOL(md_done_sync);
EXPORT_SYMBOL(md_write_start);
EXPORT_SYMBOL(md_write_end);
EXPORT_SYMBOL(md_register_thread);
EXPORT_SYMBOL(md_unregister_thread);
EXPORT_SYMBOL(md_wakeup_thread);
EXPORT_SYMBOL(md_check_recovery);
EXPORT_SYMBOL(md_reap_sync_thread);
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("MD RAID framework"); MODULE_DESCRIPTION("MD RAID framework");
MODULE_ALIAS("md"); MODULE_ALIAS("md");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册