Index: cifs-utils-6.8/mount.cifs.c =================================================================== --- cifs-utils-6.8.orig/mount.cifs.c +++ cifs-utils-6.8/mount.cifs.c @@ -2099,6 +2099,10 @@ mount_retry: switch (errno) { case ECONNREFUSED: case EHOSTUNREACH: + if (currentaddress) { + fprintf(stderr, "mount error(%d): could not connect to %s", + errno, currentaddress); + } currentaddress = nextaddress; if (currentaddress) { nextaddress = strchr(currentaddress, ','); @@ -2110,6 +2114,12 @@ mount_retry: fprintf(stderr, "mount error: %s filesystem not supported by the system\n", cifs_fstype); break; + case EHOSTDOWN: + fprintf(stderr, + "mount error: Server abruptly closed the connection.\n" + "This can happen if the server does not support the SMB version you are trying to use.\n" + "Since SLE15 the default SMB version changed from SMB1 to SMB2.1 and above. Try mounting with vers=1.0.\n"); + break; case ENXIO: if (!already_uppercased && uppercase_string(parsed_info->host) && @@ -2126,7 +2136,7 @@ mount_retry: strerror(errno)); fprintf(stderr, "Refer to the %s(8) manual page (e.g. man " - "%s)\n", thisprogram, thisprogram); + "%s) and kernel log messages (dmesg)\n", thisprogram, thisprogram); rc = EX_FAIL; goto mount_exit; } Index: cifs-utils-6.8/mount.cifs.rst =================================================================== --- cifs-utils-6.8.orig/mount.cifs.rst +++ cifs-utils-6.8/mount.cifs.rst @@ -598,7 +598,7 @@ vers=arg Note too that while this option governs the protocol version used, not all features of each version are available. - The default since v4.13.5 is for the client and server to negotiate + The default since SLE15 is for the client and server to negotiate the highest possible version greater than or equal to ``2.1``. In kernels prior to v4.13, the default was ``1.0``. For kernels between v4.13 and v4.13.5 the default is ``3.0``.