pstore: Centralize init/exit routines
In preparation for having additional actions during init/exit, this moves the init/exit into platform.c, centralizing the logic to make call outs to the fs init/exit. Signed-off-by: Kees Cook <keescook@chromium.org> Tested-by: Guenter Roeck <groeck@chromium.org>
This commit is contained in:
parent
57361846b5
commit
cb095afd44
@ -482,12 +482,10 @@ static struct file_system_type pstore_fs_type = {
|
|||||||
.kill_sb = pstore_kill_sb,
|
.kill_sb = pstore_kill_sb,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init init_pstore_fs(void)
|
int __init pstore_init_fs(void)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
pstore_choose_compression();
|
|
||||||
|
|
||||||
/* Create a convenient mount point for people to access pstore */
|
/* Create a convenient mount point for people to access pstore */
|
||||||
err = sysfs_create_mount_point(fs_kobj, "pstore");
|
err = sysfs_create_mount_point(fs_kobj, "pstore");
|
||||||
if (err)
|
if (err)
|
||||||
@ -500,14 +498,9 @@ static int __init init_pstore_fs(void)
|
|||||||
out:
|
out:
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
module_init(init_pstore_fs)
|
|
||||||
|
|
||||||
static void __exit exit_pstore_fs(void)
|
void __exit pstore_exit_fs(void)
|
||||||
{
|
{
|
||||||
unregister_filesystem(&pstore_fs_type);
|
unregister_filesystem(&pstore_fs_type);
|
||||||
sysfs_remove_mount_point(fs_kobj, "pstore");
|
sysfs_remove_mount_point(fs_kobj, "pstore");
|
||||||
}
|
}
|
||||||
module_exit(exit_pstore_fs)
|
|
||||||
|
|
||||||
MODULE_AUTHOR("Tony Luck <tony.luck@intel.com>");
|
|
||||||
MODULE_LICENSE("GPL");
|
|
||||||
|
@ -37,7 +37,8 @@ extern bool pstore_is_mounted(void);
|
|||||||
extern void pstore_record_init(struct pstore_record *record,
|
extern void pstore_record_init(struct pstore_record *record,
|
||||||
struct pstore_info *psi);
|
struct pstore_info *psi);
|
||||||
|
|
||||||
/* Called during module_init() */
|
/* Called during pstore init/exit. */
|
||||||
extern void __init pstore_choose_compression(void);
|
int __init pstore_init_fs(void);
|
||||||
|
void __exit pstore_exit_fs(void);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -780,8 +780,31 @@ void __init pstore_choose_compression(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int __init pstore_init(void)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
pstore_choose_compression();
|
||||||
|
|
||||||
|
ret = pstore_init_fs();
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
module_init(pstore_init)
|
||||||
|
|
||||||
|
static void __exit pstore_exit(void)
|
||||||
|
{
|
||||||
|
pstore_exit_fs();
|
||||||
|
}
|
||||||
|
module_exit(pstore_exit)
|
||||||
|
|
||||||
module_param(compress, charp, 0444);
|
module_param(compress, charp, 0444);
|
||||||
MODULE_PARM_DESC(compress, "Pstore compression to use");
|
MODULE_PARM_DESC(compress, "Pstore compression to use");
|
||||||
|
|
||||||
module_param(backend, charp, 0444);
|
module_param(backend, charp, 0444);
|
||||||
MODULE_PARM_DESC(backend, "Pstore backend to use");
|
MODULE_PARM_DESC(backend, "Pstore backend to use");
|
||||||
|
|
||||||
|
MODULE_AUTHOR("Tony Luck <tony.luck@intel.com>");
|
||||||
|
MODULE_LICENSE("GPL");
|
||||||
|
Loading…
Reference in New Issue
Block a user