Commit 99c84066 authored by Roel Kluin's avatar Roel Kluin Committed by Benjamin Herrenschmidt

powerpc/cell/oprofile: Fix test on overlay_tbl_offset in vma_map

Offset is unsigned and when an address isn't found in the vma map
vma_map_lookup() returns the vma physical address + 0x10000000.

vma_map_lookup used to return 0xffffffff on a failed lookup, but
a change was made to return the vma physical address + 0x10000000
There are two callers of vam_map_lookup: one of them correctly
deals with this new return value, but the other (below) did not.
Signed-off-by: default avatarRoel Kluin <12o3l@tiscali.nl>
Acked-by: default avatarMaynard Johnson <maynardj@us.ibm.com>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent 4538d0ca
...@@ -229,7 +229,7 @@ struct vma_to_fileoffset_map *create_vma_map(const struct spu *aSpu, ...@@ -229,7 +229,7 @@ struct vma_to_fileoffset_map *create_vma_map(const struct spu *aSpu,
*/ */
overlay_tbl_offset = vma_map_lookup(map, ovly_table_sym, overlay_tbl_offset = vma_map_lookup(map, ovly_table_sym,
aSpu, &grd_val); aSpu, &grd_val);
if (overlay_tbl_offset < 0) { if (overlay_tbl_offset > 0x10000000) {
printk(KERN_ERR "SPU_PROF: " printk(KERN_ERR "SPU_PROF: "
"%s, line %d: Error finding SPU overlay table\n", "%s, line %d: Error finding SPU overlay table\n",
__func__, __LINE__); __func__, __LINE__);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment