* fio environment var bug
@ 2018-06-12 18:11 Jeff Furlong
2018-06-13 5:26 ` Tomohiro Kusumi
0 siblings, 1 reply; 5+ messages in thread
From: Jeff Furlong @ 2018-06-12 18:11 UTC (permalink / raw)
To: fio
Hi All,
There seems to be a bug while parsing environment variables when using client/server mode. Consider the following:
# fio -version
fio-3.7-21-gab56
# fio --server=localhost&
# cat test.job
[test]
ioengine=libaio
direct=1
rw=randread
iodepth=${QD}
size=100%
bs=4k
filename=/dev/nvme0n1
runtime=5s
# QD=1 fio test.job
fio-3.7-21-gab56
Starting 1 process
Jobs: 1 (f=1): [r(1)][100.0%][r=320MiB/s,w=0KiB/s][r=81.9k,w=0 IOPS][eta 00m:00s]
# QD=1 fio --client=localhost test.job
be=0, 64-bit, os=Linux, arch=x86-64, fio=fio-3.7-21-gab56, flags=1
fio: failed parsing iodepth=${QD}
fio: job test dropped
I haven't deciphered where exactly the issue is in parse.c. Any thoughts? Thanks.
Regards,
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: fio environment var bug
2018-06-12 18:11 fio environment var bug Jeff Furlong
@ 2018-06-13 5:26 ` Tomohiro Kusumi
2018-06-13 22:44 ` Jeff Furlong
0 siblings, 1 reply; 5+ messages in thread
From: Tomohiro Kusumi @ 2018-06-13 5:26 UTC (permalink / raw)
To: Jeff Furlong; +Cc: fio
Jeff Furlong <jeff.furlong@wdc.com>:
>
> Hi All,
> There seems to be a bug while parsing environment variables when using client/server mode. Consider the following:
>
> # fio -version
> fio-3.7-21-gab56
>
> # fio --server=localhost&
>
> # cat test.job
> [test]
> ioengine=libaio
> direct=1
> rw=randread
> iodepth=${QD}
> size=100%
> bs=4k
> filename=/dev/nvme0n1
> runtime=5s
>
> # QD=1 fio test.job
> fio-3.7-21-gab56
> Starting 1 process
> Jobs: 1 (f=1): [r(1)][100.0%][r=320MiB/s,w=0KiB/s][r=81.9k,w=0 IOPS][eta 00m:00s]
>
> # QD=1 fio --client=localhost test.job
> be=0, 64-bit, os=Linux, arch=x86-64, fio=fio-3.7-21-gab56, flags=1
> fio: failed parsing iodepth=${QD}
> fio: job test dropped
>
> I haven't deciphered where exactly the issue is in parse.c. Any thoughts? Thanks.
Do you have QD=1 on server side ?
If not then your server probably failed to parse test.job contents
sent from client after socket is initialized.
>
> Regards,
> Jeff
>
> --
> To unsubscribe from this list: send the line "unsubscribe fio" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: fio environment var bug
2018-06-13 5:26 ` Tomohiro Kusumi
@ 2018-06-13 22:44 ` Jeff Furlong
2018-06-14 7:41 ` Tomohiro Kusumi
0 siblings, 1 reply; 5+ messages in thread
From: Jeff Furlong @ 2018-06-13 22:44 UTC (permalink / raw)
To: Tomohiro Kusumi; +Cc: fio
>Do you have QD=1 on server side ?
>If not then your server probably failed to parse test.job contents sent from client after socket is initialized.
Thanks. Now I see your point. The correct way to specify an environment variable for client/server would be to specify at the server invocation time:
# QD=1 fio --server=localhost&
Then run the client normally:
# fio --client=localhost test.job
Regards,
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: fio environment var bug
2018-06-13 22:44 ` Jeff Furlong
@ 2018-06-14 7:41 ` Tomohiro Kusumi
2018-06-14 17:43 ` Jeff Furlong
0 siblings, 1 reply; 5+ messages in thread
From: Tomohiro Kusumi @ 2018-06-14 7:41 UTC (permalink / raw)
To: Jeff Furlong; +Cc: fio
Jeff Furlong <jeff.furlong@wdc.com>:
>
> >Do you have QD=1 on server side ?
> >If not then your server probably failed to parse test.job contents sent from client after socket is initialized.
>
> Thanks. Now I see your point. The correct way to specify an environment variable for client/server would be to specify at the server invocation time:
Yes, that's the way it works, but as you mentioned I think this is a
bug (should be done on the client side).
>
> # QD=1 fio --server=localhost&
>
> Then run the client normally:
>
> # fio --client=localhost test.job
>
> Regards,
> Jeff
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: fio environment var bug
2018-06-14 7:41 ` Tomohiro Kusumi
@ 2018-06-14 17:43 ` Jeff Furlong
0 siblings, 0 replies; 5+ messages in thread
From: Jeff Furlong @ 2018-06-14 17:43 UTC (permalink / raw)
To: Tomohiro Kusumi; +Cc: fio
>> Thanks. Now I see your point. The correct way to specify an environment variable for client/server would be to specify at the server invocation time:
>Yes, that's the way it works, but as you mentioned I think this is a bug (should be done on the client side).
It would be more useful if the environment var could be changed on each client execution. For example, if we change the $QD, currently we have to kill the server and relaunch the server with the new $QD. If the client accepted the $QD, we could launch the server once and just specify each client execution with a different $QD.
Regards,
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-06-14 17:43 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-12 18:11 fio environment var bug Jeff Furlong
2018-06-13 5:26 ` Tomohiro Kusumi
2018-06-13 22:44 ` Jeff Furlong
2018-06-14 7:41 ` Tomohiro Kusumi
2018-06-14 17:43 ` Jeff Furlong
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.