diff options
| author | Christoph Hellwig <[email protected]> | 2019-06-17 09:14:12 +0000 |
|---|---|---|
| committer | Jens Axboe <[email protected]> | 2019-06-17 15:33:04 +0000 |
| commit | 4569180495600ac59f5cd27f67242a6cb51254f3 (patch) | |
| tree | 5fc8de0946ff131ad03282d9bad310f29814a9b0 /tools/perf/scripts/python/check-perf-trace.py | |
| parent | block: return from __bio_try_merge_page if merging occured in the same page (diff) | |
| download | kernel-4569180495600ac59f5cd27f67242a6cb51254f3.tar.gz kernel-4569180495600ac59f5cd27f67242a6cb51254f3.zip | |
block: fix page leak when merging to same page
When multiple iovecs reference the same page, each get_user_page call
will add a reference to the page. But once we've created the bio that
information gets lost and only a single reference will be dropped after
I/O completion. Use the same_page information returned from
__bio_try_merge_page to drop additional references to pages that were
already present in the bio.
Based on a patch from Ming Lei.
Link: https://lkml.org/lkml/2019/4/23/64
Fixes: 576ed913 ("block: use bio_add_page in bio_iov_iter_get_pages")
Reported-by: David Gibson <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
Reviewed-by: Ming Lei <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/check-perf-trace.py')
0 files changed, 0 insertions, 0 deletions
