I've captured the traffic with Wireshark and found a lot of malformed SMB packets. I used to send received packets up the network stack without the ethernet CRC and now changed it so that the upper level now gets the full packet including the 4 byte CRC checksum. I don't know why, but Wireshark shows that the number ob SMB errors has been radically reduced to only a few instead of hundreds.
With the attached version performance has improved too. I've got the following results with Blackmagic Disk Speed Test over SMB:
Realtek (Server) <---> Broadcom in iMac 2011 (Client)
Write: 5-50MB/sec but very unstable (It's strange! I'm able to boost this value up to more then 60BM/sec (stable) when doing an AFP write simultaneously!!!)
Broadcom in Mac mini 2011 (Server) <---> Realtek (Client) I guess the slow HD of Mac mini is the limiting factor here!
@Maniac10: Please try this version too in order to see if it resolves the Parallels issue!
Performance with this version seems slightly better, but not the order of magnitude (and more) we should be seeing. I'm now getting 3-4MB/sec reads...
I will do some tests with BlackMagic later just so we are using the same performance test...
I also tried setting delayed_ack=0 as suggested here: http://www.techkaki....ds-in-mac-os-x/
It didn't seem to help...