I'm doing some intensive testing on a mdadm (software RAID) partition made of 6 SSDs using
fio (Ubuntu 16.10 Server). The partition was formatted using XFS, is unmounted during tests, contains no files and isn't a boot partition. It happens that sometimes, after a cold start or a reboot, Ubuntu can't complete the boot procedure and stalls on this message:
[ OK ] Started File System Check on /dev/disk/by-uuid/8332-B8BE. [FAILED] Failed to mount /mnt/raid10. See 'systemctl status mnt-raid10.mount' for details.
This is what I get after entering in the recovery mode and issuing
systemctl status mnt-raid10.mount:
mnt-raid10.mount - /mnt/raid10 Loaded: loaded (/etc/fstab; generated; vendor preset: enabled) Active: failed (Result: exit-code) since mer 2017-02-15 08:18:33 CET; 1h 28min ago Where: /mnt/raid10 What: /dev/md2p1 Docs: man:fstab(5) man:systemd-fstab-generator(8) systemd: Mounting /mnt/raid10... mount: mount: mount /dev/md2p1 on /mnt/raid10 failed: La struttura necessita di una pulizia mnt-raid10.mount: Mount process exited, code=exited status=32 Failed to mount /mnt/raid10. mnt-raid10.mount: Unit entered failed state.
If I launch
xfs_repair /dev/md2p1 Ubuntu boots correctly and I can mount the partition.
The same problem may happen also if I try to mount the partition after testing and before rebooting by executing
mount -t xfs /dev/md2p1 /mnt/raid10.
I wonder if this is a XFS known issue, a
mdadm issue or simply its due to
fio raw writing on the
Here is a configuration file (
config.ini) that I'm using for 4k 100% read/write mix:
[4k] filename=/dev/md2p1 rw=randrw blocksize=4k filename=test.bin ioengine=libaio iodepth=16 direct=1 invalidate=1 runtime=60 write_bw_log=time_series write_lat_log=time_series write_iops_log=time_series log_avg_msec=1000 numjobs=1 rwmixread=100 refill_buffers=1 norandommap=1 randrepeat=0 per_job_logs=0 description="some text"
and here's how I call
fio config.ini > log.txt
test.bin are located on a different disk device (my home directory, which is a software RAID1 partition on HDDs mounted using