Hello, Dose this issue can be fixed? Or the only method is to use offload to workaround. 2016-11-03 15:31 GMT+08:00 Sitsofe Wheeler <sitsofe@xxxxxxxxx>: > On 3 November 2016 at 01:58, Jaze Lee <jazeltq@xxxxxxxxx> wrote: >> Is there some news for this bug ? >> >> 2016-11-02 11:50 GMT+08:00 Jaze Lee <jazeltq@xxxxxxxxx>: >>> I found this is not related with rbd engine. If use libaio, and test >>> raw device. It will also happen. >>> the fio script is >>> >>> [global] >>> ioengine=libaio >>> filename=/dev/sda >>> direct=1 >>> group_reporting >>> iodepth=32 >>> thread >>> >>> [fio_iops_test] >>> description=fio_iops_test >>> runtime=600 >>> bs=4K >>> rw=randread >>> write_lat_log=cpuiops >>> rate_iops=2000 > > Can you make sure that you keep the fio mailing list CC'd on your > mails rather than just replying to me directly? I'm just another fio > user like you... > > I too can reproduce the problem with a slightly modified version of > your job file: > [fio_iops_test] > ioengine=libaio > direct=1 > filename=/dev/nullb0 > iodepth=2 > bs=4K > rw=read > write_lat_log=/dev/null > rate_iops=2000 > > Within a second or two of running it the following assert is printed: > fio: stat.c:2004: get_cur_log: Assertion `iolog->pending->nr_samples < > iolog->pending->max_samples' failed. > > Doing any of the following stops the assertion from triggering: > setting the iodepth to 1, removing the write_lat_log parameter, > removing the rate_iops parameter or adding the io_submit_mode=offload > parameter. > > The problem seems to be due to the rate limiting somehow forcing iolog > growth pressure but there is an inability to grow the iolog at the > point we notice we need more room within stats. Normally the iolog > growing can be deferred until next submission but I guess when you > have to average over the samples in it (so as to work out the write > latency for a given period) this is an issue because the logging areas > aren't prepared for the change in size. > > You could hack the fio code to force a bigger default iolog size so it > doesn't have to grow it later but a better way would be to use the > io_submit_mode=offload parameter > (https://github.com/axboe/fio/blob/fio-2.15/HOWTO#L888 ) which > decouples the submission from the completion/logging. Perhaps fio > could put up a warning suggesting its use if you use rate_iops and one > of the parameters that force averaging together but there could be > other ways of triggering the same issue... > > -- > Sitsofe | http://sucs.org/~sits/ -- 谦谦君子 -- 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