Commit-ID:  fa1195ccc0af2d121abe0fe266a1caee8c265eea
Gitweb:     https://git.kernel.org/tip/fa1195ccc0af2d121abe0fe266a1caee8c265eea
Author:     Jiri Olsa <[email protected]>
AuthorDate: Tue, 9 Jan 2018 14:39:23 +0100
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Fri, 12 Jan 2018 16:57:16 -0300

perf tools: Fix copyfile_offset update of output offset

We need to increase output offset in each iteration, not decrease it as
we currently do.

I guess we were lucky to finish in most cases in first iteration, so the
bug never showed. However it shows a lot when working with big (~4GB)
size data.

Signed-off-by: Jiri Olsa <[email protected]>
Cc: Alexander Shishkin <[email protected]>
Cc: Andi Kleen <[email protected]>
Cc: David Ahern <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Fixes: 9c9f5a2f1944 ("perf tools: Introduce copyfile_offset() function")
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
 tools/perf/util/util.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c
index a789f95..443892d 100644
--- a/tools/perf/util/util.c
+++ b/tools/perf/util/util.c
@@ -210,7 +210,7 @@ static int copyfile_offset(int ifd, loff_t off_in, int ofd, 
loff_t off_out, u64
 
                size -= ret;
                off_in += ret;
-               off_out -= ret;
+               off_out += ret;
        }
        munmap(ptr, off_in + size);
 

Reply via email to