Xenial vagrant image crashes under high disk I/O
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cloud-images |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Xenial vagrant image for Virtualbox (20160822.0.0) uses SCSI as backend for virtual drives.
Under high disk I/O, either the LSILogic kernel driver or the LSIlogic emulation in Virtualbox start misbehaving, the kernel spits out errors and the vm gets corrupted up to the point that it will not reboot properly anymore.
We saw the error during the restore of a fairly small (2GB) mongo database, but we managed to reproduce the error using "stress-ng -d 4" (YMMV, sometimes "-d 2" is enough to reproduce the problem, sometimes you need a higher factor).
During the "stress-ng" run, the following error will appear in syslog
Aug 25 08:00:11 ubuntu kernel: [ 344.794932] mptscsih: ioc0: attempting task abort! (sc=ffff8800da6
Aug 25 08:00:11 ubuntu kernel: [ 344.794940] sd 2:0:0:0: [sda] tag#28 CDB: Write(10) 2a 00 00 5e a8 00 00 08 00 00
Aug 25 08:00:11 ubuntu kernel: [ 344.924888] mptscsih: ioc0: task abort: FAILED (rv=2003) (sc=ffff8800da6
Aug 25 08:00:18 ubuntu kernel: [ 351.788017] mptscsih: ioc0: attempting task abort! (sc=ffff8800d9e
Aug 25 08:00:18 ubuntu kernel: [ 351.788024] sd 2:0:0:0: [sda] tag#0 CDB: Write(10) 2a 00 01 0c 78 00 00 08 00 00
Aug 25 08:00:18 ubuntu kernel: [ 351.900083] mptscsih: ioc0: task abort: FAILED (rv=2003) (sc=ffff8800d9e
Aug 25 08:00:18 ubuntu kernel: [ 351.900089] mptscsih: ioc0: attempting target reset! (sc=ffff8800da6
Aug 25 08:00:18 ubuntu kernel: [ 351.900095] sd 2:0:0:0: [sda] tag#28 CDB: Write(10) 2a 00 00 5e a8 00 00 08 00 00
Aug 25 08:00:18 ubuntu kernel: [ 352.012014] mptscsih: ioc0: target reset: SUCCESS (sc=ffff8800da6
Switching the virtual drives to an emulated SATA bus makes stress-ng run without issues.
This has been identified and fixed upstream in VirtualBox and will be a part of any future 5.0, 5.1 or later releases, as well as test builds[1] as of revision 112195. Please feel free to point the VirtualBox team to this sort of thing in future, on our bug-tracker or on IRC.
[1] https:/ /www.virtualbox .org/wiki/ Testbuilds