Issue: File of few gigabytes of size (i.e. Debian DVD ISO) gets corrupted when downloadeded using curl or wget to a Windows share from Alpine Linux running in Hyper-V on the same machine Setup:
- Dell T20, Xeon and 32GB RAM
- Windows Server 2016 w/latest patches, etc
- Alpine 3.20 running in Hyper-V
- 10GB Virtual switch, MTU 1500, exposed to both WS2016 and Alpine
- Windows share mounted in Alpine in /etc/fstab
Tests I've run:
- curl/wget in Alpine, save to share - sha256 run on Alpine differs from expected. Multiple runs gets different sha256.
- curl in Windows, save to local disk - sha256 run on Alpine matches expected value
Created a new VM with empty disk, installed Alpine 3.20 with latest patches, and got the same behaviour.
Run out of ideas where to look and what to check so any idea will be greatly appreciated.
Answering myself:
Issue resolved by adding 'cache=none' option to cifs mount entry in /etc/fstab.
This allowed for a Debian 12.7 image to be transferred from local IIS to Windows share at 30 MB/s via Linux wget. Without corrupted data.
Following @GregAskew's suggestion, I disabled all 'hardware' features for the virtual switch, and speed went up few times, almost matching disk write speed.