Re: [regression] smb: client: - Failure to mount DFS namespaces without ASCII symbols

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 7 Aug 2024 at 20:34, Anthony Nandaa <profnandaa@xxxxxxxxx> wrote:
>
> On Fri, Aug 02, 2024 at 11:44:18AM +0200, Linux regression tracking (Thorsten Leemhuis) wrote:
> > Hi, Thorsten here, the Linux kernel's regression tracker.
> >
> > Paulo, I noticed a report about a regression in bugzilla.kernel.org that
> > appears to be caused by this change of yours:
> >
> > 3ae872de410751 ("smb: client: fix shared DFS root mounts with different
> > prefixes") [v6.5-rc1]
> >
> > As many (most?) kernel developers don't keep an eye on the bug tracker,
> > I decided to write this mail. To quote from
> > https://bugzilla.kernel.org/show_bug.cgi?id=219083 :
> >
> > >  Gleb Korobeynikov 2024-07-22 10:59:46 UTC
> > >
> > > Windows version of SMB host: Windows Server 2022 Standard x64
> > > Kernel: 6.3.13(upstream)
> ~~~~~~~~~~~~^~~~ Testing with same WS2022 host with 6.11.0-rc1+
>
> > > CONFIG_CIFS_DFS_UPCALL
> > >
> > > In the function cifs_inval_name_dfs_link_error(), a check was added for tcon->origin_fullpath (3ae872de410751fe5e629e04da491a632d95201c). I believe it's unnecessary because when mounting a dfs name without ASCII characters, we always fail at this check and exit the function, leading to dfs namespaces not being mounted
> > >
> > > Steps to reproduce:
> > >
> > > 1. At Windows, create DFS namespace with name containing non-ASCII symbols (for example дфс)
> > >
> > > 2. mount -t cifs \\\\<smb_server>\\дфс  /tmp/dfs -o domain=...,user=...,password=...
> > >
> > > result:
> > > mount error(2): No such file or directory
> > > Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)
> > >
> I couldn't repro this issue.
> I rebuilt the cifs modules both on master and in the recent
> for-next@cecb49e3594c2a69163865c214b71fff26d5761d sources:
>
>         $ sudo mount -t cifs //WIN-31GSG2M9E6N/дфс /mnt/utf_repro -o `
>                 username=administrator,password=xxx
>         $ ls -l /mnt/utf_repro
>         total 0
>         -rwxr-xr-x 1 root root 0 Aug  7 15:54 hello_cifs.txt
>         drwxr-xr-x 2 root root 0 Aug  7 15:54 test_utf8_дфс
>
>         // nothing outstanding in dmesg
>         [430885.246220] CIFS: Attempting to mount //WIN-31GSG2M9E6N/дфс
>
> Is there anything I might be missing?
My bad, I wasn't creating a DFS namespace, it was just a share.

I have also seen the recent updates on
https://bugzilla.kernel.org/show_bug.cgi?id=219083
I had missed that.
>
> > > CIFS debug log:
> > > [Mon Jul 22 11:00:24 2024] CIFS: Status code returned 0xc0000033 STATUS_OBJECT_NAME_INVALID
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2maperror.c: Mapping SMB2 status code 0xc0000033 to POSIX err -2
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/dfs_cache.c: dfs_cache_noreq_update_tgthint: path: \test.local\дфс
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses_count=2
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses ipc: \\test.local\IPC$
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: cifs_put_tcon: tc_count=1
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: in cifs_put_tcon as Xid: 17 with uid: 0
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2pdu.c: Tree Disconnect
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/fscache.c: cifs_fscache_release_super_cookie: (0x0000000000000000)
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses_count=1
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses ipc: \\DC.test.local\IPC$
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: in __cifs_put_smb_ses as Xid: 18 with uid: 0
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2pdu.c: disconnect session 00000000360c6881
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses_count=1
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses ipc: \\test.local\IPC$
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: in __cifs_put_smb_ses as Xid: 19 with uid: 0
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2pdu.c: disconnect session 00000000db1ddbb6
> > > [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: leaving cifs_mount_put_conns (xid = 13) rc = 0
> > > [Mon Jul 22 11:00:24 2024] CIFS: VFS: cifs_mount failed w/return code = -2
> >
> > And
> >
> > >  Gleb Korobeynikov 2024-07-30 11:03:01 UTC
> > >
> > > (In reply to Gleb Korobeynikov from comment #5)
> > >> (In reply to The Linux kernel's regression tracker (Thorsten Leemhuis) from
> > >> comment #4)
> > >> > Please check if 6.10 (or 6.11-rc1 once it's out on Monday) is still
> > >> affected
> > >>
> > >> Alright, I will definitely check
> > >
> > > Checked on 6.11-rc1. The reproduction issue happens identically.
> >
> > See the ticket for more details.
> >
> > Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
> > --
> > Everything you wanna know about Linux kernel regression tracking:
> > https://linux-regtracking.leemhuis.info/about/#tldr
> > If I did something stupid, please tell me, as explained on that page.
> >
> > [1] because bugzilla.kernel.org tells users upon registration their
> > "email address will never be displayed to logged out users"
> >
> > P.S.: let me use this mail to also add the report to the list of tracked
> > regressions to ensure it's doesn't fall through the cracks:
> >
> > #regzbot introduced: 3ae872de410751fe5e629e04da491a632d95201c
> > #regzbot title: smb: client: failure to mount DFS namespaces without
> > ASCII symbols
> > #regzbot from: Gleb Korobeynikov <gkorobeynikov@xxxxxxxxxxxxx>
> > #regzbot duplicate: https://bugzilla.kernel.org/show_bug.cgi?id=219083
> > #regzbot ignore-activity
> >
> Thanks,
> Nandaa
>


-- 
___
Nandaa Anthony





[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux