Recent changes (master)

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

 



The following changes since commit 87622bf5295880682bfad5ba14116cf5facbaf2c:

  Merge branch 'master' of https://github.com/bvanassche/fio into master (2020-08-01 15:07:38 -0600)

are available in the Git repository at:

  git://git.kernel.dk/fio.git master

for you to fetch changes up to f0ed01ed095cf1ca7c1945a5a0267e8f73b7b4a9:

  Merge branch 'master' of https://github.com/donny372/fio into master (2020-08-07 18:21:52 -0600)

----------------------------------------------------------------
Jens Axboe (1):
      Merge branch 'master' of https://github.com/donny372/fio into master

donny372 (1):
      Add support for reading iolog from stdin.

 HOWTO   |  3 +++
 fio.1   |  4 +++-
 init.c  | 12 ++++++++++++
 iolog.c |  2 ++
 4 files changed, 20 insertions(+), 1 deletion(-)

---

Diff of recent changes:

diff --git a/HOWTO b/HOWTO
index 35ead0cb..e0403b08 100644
--- a/HOWTO
+++ b/HOWTO
@@ -2625,6 +2625,9 @@ I/O replay
 	character. See the :option:`filename` option for information on how to
 	escape ':' characters within the file names. These files will
 	be sequentially assigned to job clones created by :option:`numjobs`.
+	'-' is a reserved name, meaning read from stdin, notably if
+	:option:`filename` is set to '-' which means stdin as well, then
+	this flag can't be set to '-'.
 
 .. option:: read_iolog_chunked=bool
 
diff --git a/fio.1 b/fio.1
index a3d348b2..cdd105d7 100644
--- a/fio.1
+++ b/fio.1
@@ -2336,7 +2336,9 @@ replay, the file needs to be turned into a blkparse binary data file first
 You can specify a number of files by separating the names with a ':' character.
 See the \fBfilename\fR option for information on how to escape ':'
 characters within the file names. These files will be sequentially assigned to
-job clones created by \fBnumjobs\fR.
+job clones created by \fBnumjobs\fR. '-' is a reserved name, meaning read from
+stdin, notably if \fBfilename\fR is set to '-' which means stdin as well,
+then this flag can't be set to '-'.
 .TP
 .BI read_iolog_chunked \fR=\fPbool
 Determines how iolog is read. If false (default) entire \fBread_iolog\fR will
diff --git a/init.c b/init.c
index 3710e3d4..84325f1e 100644
--- a/init.c
+++ b/init.c
@@ -2068,6 +2068,18 @@ static int __parse_jobs_ini(struct thread_data *td,
 		}
 
 		ret = fio_options_parse(td, opts, num_opts);
+
+		if (!ret) {
+			if (!strcmp(file, "-") && td->o.read_iolog_file != NULL) {
+				char *fname = get_name_by_idx(td->o.read_iolog_file,
+							      td->subjob_number);
+				if (!strcmp(fname, "-")) {
+					log_err("fio: we can't read both iolog "
+						"and job file from stdin.\n");
+					ret = 1;
+				}
+			}
+		}
 		if (!ret) {
 			if (dump_cmdline)
 				dump_opt_list(td);
diff --git a/iolog.c b/iolog.c
index 4af10da3..7f21be51 100644
--- a/iolog.c
+++ b/iolog.c
@@ -620,6 +620,8 @@ static bool init_iolog_read(struct thread_data *td)
 		fd = open_socket(fname);
 		if (fd >= 0)
 			f = fdopen(fd, "r");
+	} else if (!strcmp(fname, "-")) {
+		f = stdin;
 	} else
 		f = fopen(fname, "r");
 



[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