David Howells had noticed that ksmbd returned "Input/output error" when mounting with vers=2.0 to ksmbd. Looking at this more carefully, mounting to ksmbd works with 3.1.1 (and 3.0 and 2.1) as expected, but he is correct it fails with the wrong error for unsupported dialects like 2.0. ksmbd would be expected to fail with mounts with vers-2.1 but this error would be confusing to users. The problem is that ksmbd is returning STATUS_SUCESS on the negprot in the first part of the SMB1 header, but returning no information in the NegProt part of the response (e.g. StructureSize, SecurityMode, Dialect etc.) Looks like the bug is that you meant to return a status not supported or similar but left that out (or similar to what you do with vers=1.0, kill the socket which causes HOST DOWN to be returned by the Linux client). MS-SMB2 3.3.5.4 may have the exact error that is best to return in this case -- Thanks, Steve