MacOS – SMB share deadlocks since High Sierra

cifsfinderhigh sierramacossmb

Probably even since some very recent macOS update i'm experiencing quite frequent crashes of SMB connections i use which run on Windows Server 2016 on a local vmWare Fusion machine.

Performance is normally absolutely fine but especially when i'm copying or creating new Files the folder listing blanks out and i get the beach ball. Finder is completely unresponsive and also trying to force umount via Terminal is of no help. Can't properly shut down so only a hard reboot is left to do.

I've tried mounting alternatively via cifs:// instead of smb:// but no luck (except slower performance) and also seen this happen the day before on a colleagues MBP.

Pretty much the same as someone reported back when Yosemite arrived. No answer here as well. Older quite similar question:
Samba issues (deadlocks and instability) in OSX 10.10.1?

I can find many similar error descriptions on various older posts in the apple discussion forums but none ever had any solution.

Tried this (https://support.apple.com/en-us/HT208317) as well but didn't make any difference.

So trying here, anyone seen this behavior and knows how to get this fixed?

UPDATE January 12th, 2018:

Some new suspicion. I have a lowered MTU size configured due to a static VPN in the network to MS Azure cloud machines. I recently lowered the MTU even further down to 1400. After that i was experiencing Kernel Panics on the WiFi device instead of the SMB deadlocks. After raising MTU back to 1472 the Kernel Panics stopped and the SMB deadlocks returned. Now i've reset the MTU to the default of 1500. So far no more deadlocks or Panics, but it's been only a couple of hours with that change.

UPDATE January 23rd, 2018:

[default]
streams=yes
soft=yes
signing_required=no
protocol_vers_map=2
file_ids_off=yes

Is my final /etc/nsmb.conf which resulted in stable usage of SMB shares for over a week now.

Best Answer

Got a workaround that worked in our organization. This changes for macOS the SMB behavior to v2. Changed the following setting in the /etc/nsmb.con file.

#!/bin/sh

echo "[default]" >> /etc/nsmb.conf
echo "protocol_vers_map=2" >> /etc/nsmb.conf

exit 0