| From aba7fc852f90b5cab78e2ff654721ada7b626a3c Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 24 Jul 2023 10:10:56 +0800 |
| Subject: fs/nls: make load_nls() take a const parameter |
| |
| From: Winston Wen <wentao@uniontech.com> |
| |
| [ Upstream commit c1ed39ec116272935528ca9b348b8ee79b0791da ] |
| |
| load_nls() take a char * parameter, use it to find nls module in list or |
| construct the module name to load it. |
| |
| This change make load_nls() take a const parameter, so we don't need do |
| some cast like this: |
| |
| ses->local_nls = load_nls((char *)ctx->local_nls->charset); |
| |
| Suggested-by: Stephen Rothwell <sfr@canb.auug.org.au> |
| Signed-off-by: Winston Wen <wentao@uniontech.com> |
| Reviewed-by: Paulo Alcantara <pc@manguebit.com> |
| Reviewed-by: Christian Brauner <brauner@kernel.org> |
| Signed-off-by: Steve French <stfrench@microsoft.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| fs/nls/nls_base.c | 4 ++-- |
| include/linux/nls.h | 2 +- |
| 2 files changed, 3 insertions(+), 3 deletions(-) |
| |
| diff --git a/fs/nls/nls_base.c b/fs/nls/nls_base.c |
| index 52ccd34b1e792..a026dbd3593f6 100644 |
| --- a/fs/nls/nls_base.c |
| +++ b/fs/nls/nls_base.c |
| @@ -272,7 +272,7 @@ int unregister_nls(struct nls_table * nls) |
| return -EINVAL; |
| } |
| |
| -static struct nls_table *find_nls(char *charset) |
| +static struct nls_table *find_nls(const char *charset) |
| { |
| struct nls_table *nls; |
| spin_lock(&nls_lock); |
| @@ -288,7 +288,7 @@ static struct nls_table *find_nls(char *charset) |
| return nls; |
| } |
| |
| -struct nls_table *load_nls(char *charset) |
| +struct nls_table *load_nls(const char *charset) |
| { |
| return try_then_request_module(find_nls(charset), "nls_%s", charset); |
| } |
| diff --git a/include/linux/nls.h b/include/linux/nls.h |
| index 499e486b3722d..e0bf8367b274a 100644 |
| --- a/include/linux/nls.h |
| +++ b/include/linux/nls.h |
| @@ -47,7 +47,7 @@ enum utf16_endian { |
| /* nls_base.c */ |
| extern int __register_nls(struct nls_table *, struct module *); |
| extern int unregister_nls(struct nls_table *); |
| -extern struct nls_table *load_nls(char *); |
| +extern struct nls_table *load_nls(const char *charset); |
| extern void unload_nls(struct nls_table *); |
| extern struct nls_table *load_nls_default(void); |
| #define register_nls(nls) __register_nls((nls), THIS_MODULE) |
| -- |
| 2.40.1 |
| |