diff options
author | Guilherme G. Piccoli <gpiccoli@igalia.com> | 2022-10-06 19:42:05 -0300 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2022-10-17 13:14:10 -0700 |
commit | d85644dc5cf4023bf1a325f476d58a16bcc0798b (patch) | |
tree | 5ed6b20b421c3292db4df49fd490fb150349bccc | |
parent | 99b3b837855b987563bcfb397cf9ddd88262814b (diff) | |
download | lwn-d85644dc5cf4023bf1a325f476d58a16bcc0798b.tar.gz lwn-d85644dc5cf4023bf1a325f476d58a16bcc0798b.zip |
pstore: Improve error reporting in case of backend overlap
The pstore infrastructure supports one single backend at a time;
trying to load a another backend causes an error and displays a
message, introduced on commit 0d7cd09a3dbb ("pstore: Improve
register_pstore() error reporting").
Happens that this message is not really clear about the situation,
also the current error returned (-EPERM) isn't accurate, whereas
-EBUSY makes more sense. We have another place in the code that
relies in the -EBUSY return for a similar check.
So, make it consistent here by returning -EBUSY and using a
similar message in both scenarios.
Signed-off-by: Guilherme G. Piccoli <gpiccoli@igalia.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20221006224212.569555-2-gpiccoli@igalia.com
-rw-r--r-- | fs/pstore/platform.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index 0c034ea39954..c32957e4b256 100644 --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c @@ -562,8 +562,9 @@ out: int pstore_register(struct pstore_info *psi) { if (backend && strcmp(backend, psi->name)) { - pr_warn("ignoring unexpected backend '%s'\n", psi->name); - return -EPERM; + pr_warn("backend '%s' already in use: ignoring '%s'\n", + backend, psi->name); + return -EBUSY; } /* Sanity check flags. */ |