X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=server.c;h=23e549a590a709e4072b4de33704a32b46f3dd73;hp=b966c66cbfe342d476b8054e2665932004ed41ba;hb=c1f6f32ea74316df1e8707eba4fb95ab14fae6f7;hpb=40e8d8314f10a578765e20a4eb574b2603d292df diff --git a/server.c b/server.c index b966c66c..23e549a5 100644 --- a/server.c +++ b/server.c @@ -28,7 +28,7 @@ int fio_net_port = FIO_NET_PORT; -int exit_backend = 0; +bool exit_backend = false; enum { SK_F_FREE = 1, @@ -296,6 +296,8 @@ static int verify_convert_cmd(struct fio_net_cmd *cmd) if (crc != cmd->cmd_crc16) { log_err("fio: server bad crc on command (got %x, wanted %x)\n", cmd->cmd_crc16, crc); + fprintf(f_err, "fio: server bad crc on command (got %x, wanted %x)\n", + cmd->cmd_crc16, crc); return 1; } @@ -310,6 +312,8 @@ static int verify_convert_cmd(struct fio_net_cmd *cmd) break; default: log_err("fio: bad server cmd version %d\n", cmd->version); + fprintf(f_err, "fio: client/server version mismatch (%d != %d)\n", + cmd->version, FIO_SERVER_VER); return 1; } @@ -991,7 +995,7 @@ static int handle_command(struct sk_out *sk_out, struct flist_head *job_list, ret = 0; break; case FIO_NET_CMD_EXIT: - exit_backend = 1; + exit_backend = true; return -1; case FIO_NET_CMD_LOAD_FILE: ret = handle_load_file_cmd(cmd); @@ -1466,9 +1470,12 @@ void fio_server_send_ts(struct thread_stat *ts, struct group_run_stats *rs) memset(&p, 0, sizeof(p)); - strncpy(p.ts.name, ts->name, FIO_JOBNAME_SIZE - 1); - strncpy(p.ts.verror, ts->verror, FIO_VERROR_SIZE - 1); - strncpy(p.ts.description, ts->description, FIO_JOBDESC_SIZE - 1); + strncpy(p.ts.name, ts->name, FIO_JOBNAME_SIZE); + p.ts.name[FIO_JOBNAME_SIZE - 1] = '\0'; + strncpy(p.ts.verror, ts->verror, FIO_VERROR_SIZE); + p.ts.verror[FIO_VERROR_SIZE - 1] = '\0'; + strncpy(p.ts.description, ts->description, FIO_JOBDESC_SIZE); + p.ts.description[FIO_JOBDESC_SIZE - 1] = '\0'; p.ts.error = cpu_to_le32(ts->error); p.ts.thread_number = cpu_to_le32(ts->thread_number); @@ -1526,6 +1533,7 @@ void fio_server_send_ts(struct thread_stat *ts, struct group_run_stats *rs) p.ts.total_submit = cpu_to_le64(ts->total_submit); p.ts.total_complete = cpu_to_le64(ts->total_complete); + p.ts.nr_zone_resets = cpu_to_le64(ts->nr_zone_resets); for (i = 0; i < DDIR_RWDIR_CNT; i++) { p.ts.io_bytes[i] = cpu_to_le64(ts->io_bytes[i]); @@ -1558,6 +1566,9 @@ void fio_server_send_ts(struct thread_stat *ts, struct group_run_stats *rs) p.ts.ss_deviation.u.i = cpu_to_le64(fio_double_to_uint64(ts->ss_deviation.u.f)); p.ts.ss_criterion.u.i = cpu_to_le64(fio_double_to_uint64(ts->ss_criterion.u.f)); + p.ts.cachehit = cpu_to_le64(ts->cachehit); + p.ts.cachemiss = cpu_to_le64(ts->cachemiss); + convert_gs(&p.rs, rs); dprint(FD_NET, "ts->ss_state = %d\n", ts->ss_state); @@ -2488,7 +2499,7 @@ void fio_server_got_signal(int signal) sk_out->sk = -1; else { log_info("\nfio: terminating on signal %d\n", signal); - exit_backend = 1; + exit_backend = true; } } @@ -2570,7 +2581,7 @@ int fio_start_server(char *pidfile) setsid(); openlog("fio", LOG_NDELAY|LOG_NOWAIT|LOG_PID, LOG_USER); - log_syslog = 1; + log_syslog = true; close(STDIN_FILENO); close(STDOUT_FILENO); close(STDERR_FILENO);