aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/util/trace-event-scripting.c
diff options
context:
space:
mode:
authorThomas Petazzoni <[email protected]>2012-09-10 16:14:16 +0200
committerMarek Szyprowski <[email protected]>2012-09-10 16:15:48 +0200
commitf3d87524975f01b885fc3d009c6ab6afd0d00746 (patch)
tree620fcf52736047aeb683d73deefd8ece6fc668f7 /tools/perf/util/trace-event-scripting.c
parent55d512e245bc7699a8800e23df1a24195dd08217 (diff)
arm: mm: fix DMA pool affiliation check
The __free_from_pool() function was changed in e9da6e9905e639b0f842a244bc770b48ad0523e9. Unfortunately, the test that checks whether the provided (start,size) is within the DMA pool has been improperly modified. It used to be: if (start < coherent_head.vm_start || end > coherent_head.vm_end) Where coherent_head.vm_end was non-inclusive (i.e, it did not include the first byte after the pool). The test has been changed to: if (start < pool->vaddr || start > pool->vaddr + pool->size) So now pool->vaddr + pool->size is inclusive (i.e, it includes the first byte after the pool), so the test should be >= instead of >. This bug causes the following message when freeing the *first* DMA coherent buffer that has been allocated, because its virtual address is exactly equal to pool->vaddr + pool->size : WARNING: at /home/thomas/projets/linux-2.6/arch/arm/mm/dma-mapping.c:463 __free_from_pool+0xa4/0xc0() freeing wrong coherent size from pool Signed-off-by: Thomas Petazzoni <[email protected]> Cc: Marek Szyprowski <[email protected]> Cc: Russell King <[email protected]> Cc: Lior Amsalem <[email protected]> Cc: Maen Suleiman <[email protected]> Cc: Tawfik Bayouk <[email protected]> Cc: Shadi Ammouri <[email protected]> Cc: Eran Ben-Avi <[email protected]> Cc: Yehuda Yitschak <[email protected]> Cc: Nadav Haklai <[email protected]> [m.szyprowski: rebased onto v3.6-rc5 and resolved conflict] Signed-off-by: Marek Szyprowski <[email protected]>
Diffstat (limited to 'tools/perf/util/trace-event-scripting.c')
0 files changed, 0 insertions, 0 deletions