Fix: unchecked posix_fadvise() return value
authorJérémie Galarneau <jeremie.galarneau@gmail.com>
Tue, 17 May 2016 16:17:05 +0000 (12:17 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Wed, 18 May 2016 19:09:08 +0000 (15:09 -0400)
Found by Coverity:

CID 1019971 (#1 of 1): Unchecked return value from library
(CHECKED_RETURN)2. check_return: Calling posix_fadvise(outfd,
orig_offset - stream->max_sb_size, stream->max_sb_size, 4) without
checking return value. This library function may fail and return an
error code.

Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
src/common/consumer/consumer.c

index cb05a1eb411c9f522b37efaf8600ecdca930352f..321703a5157305104f855a3834a55ddf81434bc5 100644 (file)
@@ -1232,6 +1232,7 @@ void lttng_consumer_should_exit(struct lttng_consumer_local_data *ctx)
 void lttng_consumer_sync_trace_file(struct lttng_consumer_stream *stream,
                off_t orig_offset)
 {
+       int ret;
        int outfd = stream->out_fd;
 
        /*
@@ -1262,8 +1263,11 @@ void lttng_consumer_sync_trace_file(struct lttng_consumer_stream *stream,
         * defined. So it can be expected to lead to lower throughput in
         * streaming.
         */
-       posix_fadvise(outfd, orig_offset - stream->max_sb_size,
+       ret = posix_fadvise(outfd, orig_offset - stream->max_sb_size,
                        stream->max_sb_size, POSIX_FADV_DONTNEED);
+       if (ret) {
+               WARN("posix_fadvise() error (%i)", ret);
+       }
 }
 
 /*
This page took 0.037643 seconds and 4 git commands to generate.