fio causes segfault after particular of random writes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 Hello,

I am using fio for benchmarking of SSDs and noticed that fio causes a segfault after writing about 260000 MB with block size of 4069 bytes at random in one job. Writing the same or just bigger amount of data sequentially in 1 MB blocks works well. The situation is reproducible with several fio versions, i.e. 1.34, 1.41, 1.43, 1.43.2 as of 09/16/2010.

My system runs Gentoo Linux with kernel version 2.6.35:

uname -ar:

Linux ava-srv1 2.6.35-gentoo-r8 #1 SMP Thu Sep 23 01:15:44 CEST 2010 x86_64 Intel(R) Xeon(R) CPU X5550 @ 2.67GHz GenuineIntel GNU/Linux


The kernel log says:

[40594.224072] fio[8194]: segfault at 60000008 ip 000000000040f010 sp 00007fff15d04540 error 6 in fio[400000+3d000]


Shell output:

fio ssd-test-half 2>&1>  ssd_raid0_half.txt
fio: pid=8194, got signal=11
fio: file hash not empty on exit



Content of 'ssd_raid0_half.txt':

ssd_raid0_rw: (g=0): rw=randwrite, bs=4K-4K/4K-4K, ioengine=libaio, iodepth=31
ssd_raid0_rw: (g=1): rw=randwrite, bs=4K-4K/4K-4K, ioengine=libaio, iodepth=31
Starting 2 processes

ssd_raid0_rw: (groupid=0, jobs=1): err= 0: pid=5614
  Description  : [SSD RAID0 random write test]
  write: io=152636MB, bw=14733KB/s, iops=3683 , runt=10608985msec
    slat (usec): min=0 , max=311 , avg=12.35, stdev= 6.25
    clat (usec): min=0 , max=516847 , avg=8401.34, stdev=23180.68
     lat (usec): min=0 , max=516861 , avg=8414.20, stdev=23181.16
    bw (KB/s) : min= 1565, max=94672, per=100.30%, avg=14776.62, stdev=7192.34
  cpu          : usr=1.71%, sys=5.54%, ctx=22398949, majf=0, minf=687154
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=100.0%, 32=0.0%,>=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%,>=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.1%, 64=0.0%,>=64=0.0%
     issued r/w/d: total=0/39074846/0, short=0/0/0
     lat (usec): 2=0.01%, 20=0.01%, 50=0.01%, 100=0.02%, 250=0.30%
     lat (usec): 500=2.41%, 750=8.67%, 1000=11.26%
     lat (msec): 2=40.79%, 4=17.93%, 10=3.51%, 20=2.65%, 50=9.30%
     lat (msec): 100=1.06%, 250=2.05%, 500=0.05%, 750=0.01%
     errors    : total=0, first_error=0/<Success>
ssd_raid0_rw: (groupid=1, jobs=1): err= 0: pid=8194
  Description  : [SSD RAID0 random write test]
  cpu          : usr=0.00%, sys=0.00%, ctx=0, majf=0, minf=0
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=100.0%, 32=0.0%,>=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%,>=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%,>=64=0.0%
     issued r/w/d: total=0/67108865/0, short=0/0/0
     lat (usec): 2=0.01%, 20=0.01%, 50=0.01%, 100=0.02%, 250=0.47%
     lat (usec): 500=2.42%, 750=7.34%, 1000=9.56%
     lat (msec): 2=34.94%, 4=17.15%, 10=3.67%, 20=3.17%, 50=14.54%
     lat (msec): 100=3.48%, 250=3.15%, 500=0.07%, 750=0.01%
     errors    : total=0, first_error=0/<Success>

Run status group 0 (all jobs):
  WRITE: io=152636MB, aggrb=14732KB/s, minb=15086KB/s, maxb=15086KB/s, mint=10608985msec, maxt=10608985msec

Run status group 1 (all jobs):

Disk stats (read/write):
  md9: ios=53/106183711, merge=0/0, ticks=0/0, in_queue=0, util=0.00%, aggrios=13/26545927, aggrmerge=0/0, aggrticks=2/308056055, aggrin_queue=308040475, aggrutil=0.00%
    sdh: ios=4/26554543, merge=0/0, ticks=0/206354320, in_queue=206338240, util=0.00%
    sdi: ios=14/26543759, merge=0/0, ticks=0/664104677, in_queue=664089630, util=0.00%
    sdj: ios=8/26540642, merge=0/0, ticks=0/206861870, in_queue=206846313, util=0.00%
    sdg: ios=29/26544767, merge=0/0, ticks=10/154903353, in_queue=154887717, util=0.00%


The corresponding job file contains:

[global]
name=ssd_raid0_rw
description=SSD RAID0 random write test
bs=4096
ioengine=libaio
iodepth=31
direct=1
continue_on_error=1
filename=/dev/md9

[rand-write1]
rw=randwrite
numjobs=1
norandommap
size=160050446336
stonewall
#write_iolog=io_patterns1.log
write_bw_log=bandwidth1
write_lat_log

[rand-write2]
rw=randwrite
numjobs=1
norandommap
size=320100892672
stonewall
#write_iolog=io_patterns2.log
write_bw_log=bandwidth2
write_lat_log


iostat -m (values were reset for md9 before starting the benchmark):

Linux 2.6.35-gentoo-r8 (ava-srv1) 	09/23/10 	_x86_64_	(16 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.08    0.01    0.24    5.23    0.00   94.44

Device:            tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sdb               0.77         0.00         0.06        106       2559
sdc               0.00         0.00         0.00          0          0
sdd               0.00         0.00         0.00          0          0
sde               0.00         0.00         0.00          0          0
sdf               0.00         0.00         0.00          0          0
sda               0.78         0.00         0.06        104       2559
md0              15.21         0.00         0.06        202       2529
md3               0.01         0.00         0.00          1          0
md2               0.01         0.00         0.00          1          0
md1               0.11         0.00         0.00          4         15
sdg             589.24         0.00         2.30          0     103919
sdh             589.46         0.00         2.30          0     103958
sdi             589.22         0.00         2.30          0     103915
sdj             589.15         0.00         2.30          0     103903
md9            2357.07         0.00         9.21          0     415696


The first job is done well, however the second one causes the segfault. I would be glad if you could help me. Thank you.

Kind regards,
Nikolaus

--
Dipl.-Inf. Nikolaus Jeremic          nikolaus.jeremic@xxxxxxxxxxxxxx
Universitaet Rostock                 Tel:  (+49) 381 / 498 - 7633
Albert-Einstein-Str. 21	             Fax:  (+49) 381 / 498 - 7482
18051 Rostock, Germany               wwwava.informatik.uni-rostock.de

--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux