Re: regression in CIFS(?) between 4.17.14 and 4.18.0

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

 



To clarify a few things:
- are you saying that you had the original older dialect (SMB2.0,
vers=2.0) signing problem, but now that that is resolved see
occasional hangs in listing directories
- do you see any correlation between the size of the directory and hangs
- is a reconnect involved (I see mention of the krb5 upcall, which
presumably could hang in a reconnect scenario if AD server were not
available to refresh the ticket and it had expired)?  You can see the
number of reconnects (if any) in /proc/fs/cifs/Stats
- if it is a reconnect any idea if intermittent network issue or hung
server was the reason for the reconnect?
- for the hung directory examples are you seeing them with smb3 (which
presumably is the most common dialect being used and safest) or
earlier dialect/
- what is the server type?
On Thu, Sep 6, 2018 at 7:30 AM Dr. Bernd Feige
<bernd.feige@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
> Dear Steve et al.,
>
> I'm running Linux 4.18.6 in a corporate environment and now have the
> issue that listing directories lets the process hang interminably,
> loading one CPU by 100%. This does not happen every time (i.e.
> sometimes a directory listing completes).
>
> Note that this works solidly with 4.17.13.
>
> More verbatim:
>
> I had the problem the OP noted with 4.18.5 during upcall. I had
> vers=2.1 in the mount options since the servers used to not support
> vers=3. I didn't get a kernel oops but a hung mount process. It worked
> with 4.17.13.
>
> Reading this thread, I then dropped the vers= option and found that
> mounts worked again (still with 4.18.5) after confirming:
>
> nmap -Pn -p 445 --script smb-protocols ad
>
> PORT    STATE SERVICE
> 445/tcp open  microsoft-ds
>
> Host script results:
> | smb-protocols:
> |   dialects:
> |     NT LM 0.12 (SMBv1) [dangerous, but default]
> |     2.02
> |     2.10
> |     3.00
> |     3.02
> |_    3.11
>
> However, it may be that the actual mount uses version 2 still:
>
> Sep 06 09:43:18  cifs.upcall[15995]: key description: cifs.spnego;0;0;39010000;ver=0x2;host=xxx;ip4=xxx;sec=krb5;uid=0x3e8;creduid=0x3e8;user=root;pid=0x671b
> Sep 06 09:43:18  cifs.upcall[15995]: ver=2
> Sep 06 09:43:18  cifs.upcall[15995]: host=xxx
> Sep 06 09:43:18  cifs.upcall[15995]: ip=xxx
> Sep 06 09:43:18  cifs.upcall[15995]: sec=1
> Sep 06 09:43:18  cifs.upcall[15995]: uid=1000
> Sep 06 09:43:18  cifs.upcall[15995]: creduid=1000
> Sep 06 09:43:18  cifs.upcall[15995]: user=root
> Sep 06 09:43:18  cifs.upcall[15995]: pid=26395
> Sep 06 09:43:18  cifs.upcall[15995]: get_cachename_from_process_env: pathname=/proc/26395/environ
> Sep 06 09:43:18  cifs.upcall[15995]: get_cachename_from_process_env: read to end of buffer (4096 bytes)
> Sep 06 09:43:18  cifs.upcall[15995]: get_existing_cc: default ccache is FILE:/tmp/krb5cc_1000
> Sep 06 09:43:18  cifs.upcall[15995]: handle_krb5_mech: getting service ticket for xxx
> Sep 06 09:43:18  cifs.upcall[15995]: handle_krb5_mech: obtained service ticket
> Sep 06 09:43:18  cifs.upcall[15995]: Exit status 0
>
> Thanks and best regards,
> Bernd



-- 
Thanks,

Steve



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

  Powered by Linux