diff options
author | Kees Cook <keescook@chromium.org> | 2020-05-05 05:21:54 +0300 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2020-05-12 19:12:31 +0300 |
commit | e7c1c00cf3fafde7496e31cacd718a51d0e7d70c (patch) | |
tree | 5d3b1613fef5e423f95dd95d094ef266e39c3764 /fs | |
parent | 8f3d9f354286745c751374f5f1fcafee6b3f3136 (diff) | |
download | linux-e7c1c00cf3fafde7496e31cacd718a51d0e7d70c.tar.xz |
pstore: Drop useless try_module_get() for backend
There is no reason to be doing a module get/put in pstore_register(),
since the module calling pstore_register() cannot be unloaded since it
hasn't finished its initialization. Remove it so there is no confusion
about how registration ordering works.
Link: https://lore.kernel.org/lkml/20200506152114.50375-2-keescook@chromium.org/
Signed-off-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/pstore/platform.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index 408277ee3cdb..44f8b9742263 100644 --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c @@ -555,8 +555,6 @@ out: */ int pstore_register(struct pstore_info *psi) { - struct module *owner = psi->owner; - if (backend && strcmp(backend, psi->name)) { pr_warn("ignoring unexpected backend '%s'\n", psi->name); return -EPERM; @@ -591,10 +589,6 @@ int pstore_register(struct pstore_info *psi) sema_init(&psinfo->buf_lock, 1); spin_unlock(&pstore_lock); - if (owner && !try_module_get(owner)) { - psinfo = NULL; - return -EINVAL; - } if (psi->flags & PSTORE_FLAGS_DMESG) allocate_buf_for_compression(); @@ -626,8 +620,6 @@ int pstore_register(struct pstore_info *psi) pr_info("Registered %s as persistent store backend\n", psi->name); - module_put(owner); - return 0; } EXPORT_SYMBOL_GPL(pstore_register); |