diff options
author | Jiri Olsa <jolsa@kernel.org> | 2018-01-09 14:39:23 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-04-12 12:32:21 +0200 |
commit | 6a88a999c45db9500ab16656a9a15fa601403e17 (patch) | |
tree | 8fda3231b8b0aa67df3f82a982f38452b4e5b452 /tools | |
parent | 7cae67e31292ea0c257e944ba23854d089e860f6 (diff) | |
download | linux-stable-6a88a999c45db9500ab16656a9a15fa601403e17.tar.gz linux-stable-6a88a999c45db9500ab16656a9a15fa601403e17.tar.bz2 linux-stable-6a88a999c45db9500ab16656a9a15fa601403e17.zip |
perf tools: Fix copyfile_offset update of output offset
[ Upstream commit fa1195ccc0af2d121abe0fe266a1caee8c265eea ]
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 <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Fixes: 9c9f5a2f1944 ("perf tools: Introduce copyfile_offset() function")
Link: http://lkml.kernel.org/r/20180109133923.25406-1-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/perf/util/util.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c index 3687b720327a..cc57c246eade 100644 --- a/tools/perf/util/util.c +++ b/tools/perf/util/util.c @@ -196,7 +196,7 @@ int copyfile_offset(int ifd, loff_t off_in, int ofd, loff_t off_out, u64 size) size -= ret; off_in += ret; - off_out -= ret; + off_out += ret; } munmap(ptr, off_in + size); |