aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Zwisler <ross.zwisler@linux.intel.com>2016-12-06 21:04:01 -0700
committerEryu Guan <eguan@redhat.com>2016-12-07 17:21:11 +0800
commit490baac3805a26c33e1bcd6f1f769259f60960eb (patch)
treeedcc0a9a392688aa472f473ce4a7bcc19fbcc2b9
parent8c96cfbfe530cadc978207dac11c9fb54a1ecd72 (diff)
downloadxfstests-dev-490baac3805a26c33e1bcd6f1f769259f60960eb.tar.gz
build: fix build warnings and notify_others() bug
This patch addresses the following build warnings: fsx.c: In function 'do_punch_hole': fsx.c:940:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (!quiet && testcalls > simulatedopcount) ^~ fsx.c:942:4: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if' log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED); ^~~~ fsx.c:947:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (!quiet && testcalls > simulatedopcount) ^~ fsx.c:949:4: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if' log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED); ^~~~ fsx.c: In function 'do_zero_range': fsx.c:995:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (!quiet && testcalls > simulatedopcount) ^~ fsx.c:997:4: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if' log4(OP_ZERO_RANGE, offset, length, FL_SKIPPED | ^~~~ [CC] growfiles growfiles.c: In function 'notify_others': growfiles.c:1458:6: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if ( Forker_pids[ind] != Pid ) ^~ growfiles.c:1462:10: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if' kill(Forker_pids[ind], SIGUSR2); ^~~~ The warnings in fsx.c were just spacing issues of the form: if (length == 0) { if (!quiet && testcalls > simulatedopcount) prt("skipping zero length punch hole\n"); log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED); return; } Where the log4() call just needs to be unindented. log4() calls elsewhere in that same file are not protected with any sort of 'quiet' check, and commonly follow prt() calls which are. See doread(), domapread(), etc. The warning from growfiles.c was actually a bug. notify_others() is looping through the Forker_pids[] array and sending SIGUSR2 to all other processes. However, with the current logic it only *logs* the kill for other processes, and kills all other processes plus the Forker_pids[] entry that matches 'Pid'. Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com> Cc: Dave Chinner <david@fromorbit.com> Cc: Lukas Czerner <lczerner@redhat.com> Cc: Allison Henderson <achender@vnet.ibm.com> Cc: Christoph Hellwig <hch@lst.de> Cc: Nathan Scott <nathans@sgi.com> Reviewed-by: Eryu Guan <eguan@redhat.com> Signed-off-by: Eryu Guan <eguan@redhat.com>
-rw-r--r--ltp/fsx.c8
-rw-r--r--ltp/growfiles.c3
2 files changed, 6 insertions, 5 deletions
diff --git a/ltp/fsx.c b/ltp/fsx.c
index 74a3b74ce9..3713bbe35f 100644
--- a/ltp/fsx.c
+++ b/ltp/fsx.c
@@ -939,14 +939,14 @@ do_punch_hole(unsigned offset, unsigned length)
if (length == 0) {
if (!quiet && testcalls > simulatedopcount)
prt("skipping zero length punch hole\n");
- log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED);
+ log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED);
return;
}
if (file_size <= (loff_t)offset) {
if (!quiet && testcalls > simulatedopcount)
prt("skipping hole punch off the end of the file\n");
- log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED);
+ log4(OP_PUNCH_HOLE, offset, length, FL_SKIPPED);
return;
}
@@ -994,8 +994,8 @@ do_zero_range(unsigned offset, unsigned length, int keep_size)
if (length == 0) {
if (!quiet && testcalls > simulatedopcount)
prt("skipping zero length zero range\n");
- log4(OP_ZERO_RANGE, offset, length, FL_SKIPPED |
- (keep_size ? FL_KEEP_SIZE : FL_NONE));
+ log4(OP_ZERO_RANGE, offset, length, FL_SKIPPED |
+ (keep_size ? FL_KEEP_SIZE : FL_NONE));
return;
}
diff --git a/ltp/growfiles.c b/ltp/growfiles.c
index 06f179f442..fb91761f56 100644
--- a/ltp/growfiles.c
+++ b/ltp/growfiles.c
@@ -1455,11 +1455,12 @@ notify_others()
send_signals=1; /* only send signals once */
for (ind=0; ind< Forker_npids; ind++) {
- if ( Forker_pids[ind] != Pid )
+ if ( Forker_pids[ind] != Pid ) {
if ( Debug > 1 )
printf("%s%s: %d DEBUG2 %s/%d: Sending SIGUSR2 to pid %d\n",
Progname, TagName, Pid, __FILE__, __LINE__, Forker_pids[ind]);
kill(Forker_pids[ind], SIGUSR2);
+ }
}
}