[Samba] Share mounts in SMBv1 mode, but fails weirdly in SMBv2 mode

Hadrien Grasland grasland at lal.in2p3.fr
Fri Oct 13 13:34:27 UTC 2017

Hi Louis,

Thanks for your reply!

> This might be a kernel thing. 4.13.5-1 .. ? Archlinux?

OpenSUSE Tumbleweed, actually.

At some point, I got tired of rebuilding the entire world all the time 
because of the millenary tension between the wishes of stable distro 
maintainers (who would rather not fix what isn't broken, and keep 
packages as stable as possible) and those of my developer colleagues 
(who would rather put hard requirements on GCC 7 or CMake 3.9 whenever 
they can get away with it), and decided that I could live with the 
occasional breakages of a rolling distro at work, as long as rolling 
back a broken system was easy.

> There where recently e-mail about this on technical.
> So maybe its not implemented parts in samba or mount commands (yet)
I would welcome any clarification on this.

> And i point to this : smb2_get_dfs_refer
>>>>> [13424.783242] CIFS VFS: ioctl error in smb2_get_dfs_refer rc=-2
>>>>> [13424.789504] CIFS VFS: cifs_read_super: get root inode failed
> To give an idea..
> https://kernel.opensuse.org/cgit/kernel-source/diff/patches.fixes/0001-CIFS-implement-get_dfs_refer-for-SMB2.patch?id=98a4a0402b8b564b24414c3f2d6b0268f6843341

I ended up on this kernel patch as well while googling the error, 
however from a look at the code and the dmesg output, the error seemed 
to originate from an underlying call to the SMB2_ioctl() function. 
Juding from the short name and the long list of parameters, this 
function seemed like a big piece of machinery on its own, so I decided 
not to investigate it further without extra help. Which is why I came here.

> This italian site shows exact the same problem.
> http://forum.html.it/forum/showthread/t-2959605.html
> I suggest, lower you kernel to 4.9 somewhere around there.
> See if that works, and then try vers=2.1

Rolling back the kernel this far may be a bit difficult on Tumbleweed. I 
never tried it, but the maintainers tend to be quite agressive at 
removing old package versions from the repos. I guess that going for 
older kernels is not true to their vision of the rolling release spirit :)

As for version 2.1, I have tried it already, but unfortunately the 
server does not seem to support it (dmesg gives a "Dialect not supported 
by server." error).

Note that I am not in an immediate hurry to get SMBv2 working. SMBv1 
works for me today, and from discussion with the sysadmins, it will be a 
long while before they disable it entirely. So I have time to 
investigate this issue, file any needed bug report to the relevant 
software projects, and would even help working on the fix myself if I 
had even a remote idea of what's going on here. Sadly, my technical 
background is more in scientific computing than distributed filesystems.

By the way, if you could tell me a bit more about the relationship 
between the kernel CIFS support and Samba, it might help. I naively went 
for the samba mailing list first as I got the impression that this is 
the project where all Linux SMB protocol support is implemented first, 
but perhaps I should take this to the kernel mailing list(s) instead ?

Thanks for the help,

> Greetz,
> Louis
>> -----Oorspronkelijk bericht-----
>> Van: samba [mailto:samba-bounces at lists.samba.org] Namens
>> Rowland Penny via samba
>> Verzonden: vrijdag 13 oktober 2017 14:14
>> Aan: samba at lists.samba.org
>> Onderwerp: Re: [Samba] Share mounts in SMBv1 mode, but fails
>> weirdly in SMBv2 mode
>> On Fri, 13 Oct 2017 14:00:34 +0200
>> Hadrien Grasland via samba <samba at lists.samba.org> wrote:
>>> Le 13/10/2017 à 01:46, Jeremy Allison via samba a écrit :
>>>> On Thu, Oct 12, 2017 at 03:58:58PM +0200, Hadrien Grasland via
>>>> samba wrote:
>>>>> Hi,
>>>>> We're slowly deprecating SMBv1 support at work, so I'm trying to
>>>>> mount our Samba network shares using SMBv2.0. This should in
>>>>> principle be supported by the server, and seems works well enough
>>>>> for the Windows clients. But it fails for me with some
>> errors which
>>>>> I do not understand.
>>>>> Can you help me figure out what's going on? Here's my system
>>>>> configuration and a quick summary of what I have so far:
>>>>> hadrien at linux-2ak3:~> uname -a
>>>>> Linux linux-2ak3 4.13.5-1-default #1 SMP PREEMPT Thu Oct
>> 5 18:28:26
>>>>> UTC 2017 (3fd9659) x86_64 x86_64 x86_64 GNU/Linux
>>>>> hadrien at linux-2ak3:~> /sbin/mount.cifs --version
>>>>> mount.cifs version: 6.5
>>>>> hadrien at linux-2ak3:~> sudo mount -v -t cifs
>> //nfsserv22/expsi test
>>>>> -o credentials=<path to credentials file>,vers=2.0
>>>>> domain=LAL
>>>>> mount.cifs kernel mount options:
>> ip=,unc=\\nfsserv22\expsi,vers=2.0,user=grasland
> ,,domain=LAL,pass=********
>>>>> mount error(95): Operation not supported Refer to the
>>>>> mount.cifs(8) manual page (e.g. man mount.cifs)
>>>>> hadrien at linux-2ak3:~> dmesg | tail [...]
>>>>> [13424.783242] CIFS VFS: ioctl error in smb2_get_dfs_refer rc=-2
>>>>> [13424.789504] CIFS VFS: cifs_read_super: get root inode failed
>>>>> Replacing "vers=2.0" with "vers=1.0" in the mount command line
>>>>> makes this work, so I'm quite confident that my general
>>>>> configuration is correct and the problem is somehow specific to
>>>>> the SMBv2 protocol. However, I'm a Samba newbie and would welcome
>>>>> any tips on how to extract more information from this
>>>>> machine/server in order to figure out why SMBv2 specifically is
>>>>> failing.
>>>> Can you get a wireshark trace on port 445 between client and
>>>> server ? That would help.
>>> There you go. I attached it to the e-mail, not sure if that's the
>>> proper way to send (small) files around on this list, if not please
>>> tell me :)
>> OK, no it isn't ;-)
>> This list strips off any attachments, so either put it into
>> the post or
>> post it somewhere and provide a link to it.
>> Rowland
>> -- 
>> To unsubscribe from this list go to the following URL and read the
>> instructions:  https://lists.samba.org/mailman/options/samba

More information about the samba mailing list