Winston had an updated version of the patch - just replaced it with his updated one which does a cast to (char *) ses->local_nls = load_nls((char *)ctx->local_nls->charset); But as he noted in an earlier email thread: > Perhaps I should make a change to load_nls() to take a const char * > instead of char *? If this make sense, I'll do it soon. which is probably cleaner On Wed, Jul 19, 2023 at 7:35 PM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > Hi all, > > After merging the cifs tree, today's linux-next build (x86_64 > allmodconfig) failed like this: > > fs/smb/client/connect.c: In function 'cifs_get_smb_ses': > fs/smb/client/connect.c:2293:49: error: passing argument 1 of 'load_nls' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] > 2293 | ses->local_nls = load_nls(ctx->local_nls->charset); > | ~~~~~~~~~~~~~~^~~~~~~~~ > In file included from fs/smb/client/cifsproto.h:10, > from fs/smb/client/connect.c:37: > include/linux/nls.h:50:35: note: expected 'char *' but argument is of type 'const char *' > 50 | extern struct nls_table *load_nls(char *); > | ^~~~~~ > > Caused by commit > > 46055407cd4a ("cifs: fix charset issue in reconnection") > > I have used the cifs tree from next-20230719 for today. > > It looks as though the parameter to load_nls could be made const safely > as it is just passed to try_then_request_module() passes it to > __request_module() which just passes it to vsnprintf() to construct the > module name. There does not appear to be any maintainer for fs/nls ... > -- > Cheers, > Stephen Rothwell -- Thanks, Steve