I'm running:

SUSE Linux Enterprise Server 12 SP2 (x86_64)



When trying to mount a CIFS mount via the kernel:
# mount.cifs // /home/fsshare -o credentials=/etc/smbcredentials,sec=ntlm,vers=2.0
# mount.cifs // /home/fsshare -o credentials=/etc/smbcredentials,vers=2.0
# mount.cifs // /home/fsshare -o credentials=/etc/smbcredentials,sec=ntlm
All the above come back with the following error:

mount error(38): Function not implemented
When doing it via smbmount:

# smbclient -U username -L fsserver01
It comes back successful:

Domain=[ADDOMAIN] OS=[] Server=[]

        Sharename       Type      Comment
        ---------       ----      -------
        ADMIN$          Disk      Remote Admin
        C$              Disk      Default share
        E$              Disk      Default share
        F$              Disk      Default share
        FS01        Disk
        FS02          Disk
        FS03            Disk
        Users           Disk
Domain=[ADDOMAIN] OS=[] Server=[]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------                 -------
Samba package version:


Kernel has the CIFS module loaded, and all dependencies:

# modinfo /lib/modules/4.4.90-92.45-default/kernel/fs/cifs/cifs.ko
filename:       /lib/modules/4.4.90-92.45-default/kernel/fs/cifs/cifs.ko
version:        2.08
description:    VFS to access servers complying with the SNIA CIFS Specification e.g. Samba and Windows
license:        GPL
author:         Steve French <sfrench@us.ibm.com>
alias:          fs-cifs
srcversion:     2AF88CFDEC6299D515740A6
depends:        fscache,dns_resolver
supported:      yes
intree:         Y
vermagic:       4.4.90-92.45-default SMP mod_unload modversions
signer:         SUSE Linux Enterprise Secure Boot Signkey
sig_key:        3F:B0:77:B6:CE:BC:6F:F2:52:2E:1C:14:8C:57:C7:77:C7:88:E3:E7
sig_hashalgo:   sha256
parm:           CIFSMaxBufSize:Network buffer size (not including header). Default: 16384 Range: 8192 to 130048 (uint)
parm:           cifs_min_rcv:Network buffers in pool. Default: 4 Range: 1 to 64 (uint)
parm:           cifs_min_small:Small network buffers in pool. Default: 30 Range: 2 to 256 (uint)
parm:           cifs_max_pending:Simultaneous requests to server. Default: 32767 Range: 2 to 32767. (uint)
parm:           enable_oplocks:Enable or disable oplocks. Default: y/Y/1 (bool)

My fstab looks like:

# cat /etc/fstab

// /home/fsshare cifs credentials=/etc/smbcredentials,sec=ntlm,vers=2.0 0 0

When mounting from the kernel it's really not using the /etc/samba/smb.conf file, so I don't see the need to post the config I have in here, but I have modified it to support SMB2 anyway.

From dmesg:

[   14.430308] FS-Cache: Loaded
[   14.432507] Key type dns_resolver registered
[   14.507554] FS-Cache: Netfs 'cifs' registered for caching
[   14.507570] Key type cifs.spnego registered
[   14.507574] Key type cifs.idmap registered
[ 2475.448163] CIFS VFS: cifs_mount failed w/return code = -38
[ 2477.818137] CIFS VFS: cifs_mount failed w/return code = -38
[ 4148.184334] CIFS VFS: cifs_mount failed w/return code = -38
[ 4417.242655] CIFS VFS: cifs_mount failed w/return code = -38
[ 4437.198403] CIFS VFS: cifs_mount failed w/return code = -38
[ 4450.775798] CIFS VFS: cifs_mount failed w/return code = -38
[ 5123.222373] CIFS VFS: cifs_mount failed w/return code = -38
[ 5139.037057] CIFS VFS: cifs_mount failed w/return code = -38
[ 5172.597851] CIFS VFS: cifs_mount failed w/return code = -38
Our Windows Fileshare is locked down to only do SMB2, but the support should be there with the kernel version we have running, along with SLES 12 SP2. Just doesn't make sense.

Any help would be great =)