Skip to contentSkip to conversation

Recent changes (master)

PATCH Jens Axboe 1 participant 1 message Nov 7, 2013

lore
Share & tools
lore

Jens Axboe

author
#0 lore raw

The following changes since commit 30e472c9a11dcdd02e2b38b510c27cc3deb95931:

Fix a couple of typos in fio2gnuplot. (2013-11-04 08:08:39 -0700)

are available in the git repository at:
git://git.kernel.dk/fio.git master

Jens Axboe (2):
server: get rid of compile warning on platforms where pid_t isn't int
posixaio: fix thread problem with using errno

 engines/posixaio.c |    8 +++++---
 server.c           |    8 ++++----
 2 files changed, 9 insertions(+), 7 deletions(-)

---

Diff of recent changes:

engines/posixaio.c +5 -3
index a2b5387..2df26af 100644
@@ -196,18 +196,20 @@ static int fio_posixaio_queue(struct thread_data *td,
 		return FIO_Q_COMPLETED;
 #endif
 	}
-		
+
 	if (ret) {
+		int aio_err = aio_error(aiocb);
+
 		/*
 		 * At least OSX has a very low limit on the number of pending
 		 * IOs, so if it returns EAGAIN, we are out of resources
 		 * to queue more. Just return FIO_Q_BUSY to naturally
 		 * drop off at this depth.
 		 */
-		if (errno == EAGAIN)
+		if (aio_err == EAGAIN)
 			return FIO_Q_BUSY;
 
-		io_u->error = errno;
+		io_u->error = aio_err;
 		td_verror(td, io_u->error, "xfer");
 		return FIO_Q_COMPLETED;
 	}
server.c +4 -4
index 3d31cbf..ac4bf33 100644
@@ -473,13 +473,13 @@ static void fio_server_add_fork_item(pid_t pid, struct flist_head *list)
 
 static void fio_server_add_conn_pid(pid_t pid)
 {
-	dprint(FD_NET, "server: forked off connection job (pid=%u)\n", pid);
+	dprint(FD_NET, "server: forked off connection job (pid=%u)\n", (int) pid);
 	fio_server_add_fork_item(pid, &conn_list);
 }
 
 static void fio_server_add_job_pid(pid_t pid)
 {
-	dprint(FD_NET, "server: forked off job job (pid=%u)\n", pid);
+	dprint(FD_NET, "server: forked off job job (pid=%u)\n", (int) pid);
 	fio_server_add_fork_item(pid, &job_list);
 }
 
@@ -490,7 +490,7 @@ static void fio_server_check_fork_item(struct fio_fork_item *ffi)
 	ret = waitpid(ffi->pid, &status, WNOHANG);
 	if (ret < 0) {
 		if (errno == ECHILD) {
-			log_err("fio: connection pid %u disappeared\n", ffi->pid);
+			log_err("fio: connection pid %u disappeared\n", (int) ffi->pid);
 			ffi->exited = 1;
 		} else
 			log_err("fio: waitpid: %s\n", strerror(errno));
@@ -509,7 +509,7 @@ static void fio_server_check_fork_item(struct fio_fork_item *ffi)
 
 static void fio_server_fork_item_done(struct fio_fork_item *ffi)
 {
-	dprint(FD_NET, "pid %u exited, sig=%u, exitval=%d\n", ffi->pid, ffi->signal, ffi->exitval);
+	dprint(FD_NET, "pid %u exited, sig=%u, exitval=%d\n", (int) ffi->pid, ffi->signal, ffi->exitval);
 
 	/*
 	 * Fold STOP and QUIT...