[PATCH] [CELL] oprofile: test for flag instead of negative on unsigned

From: roel kluin
Date: Tue Sep 09 2008 - 15:48:32 EST

vi arch/powerpc/oprofile/cell/vma_map.c +46

And you'll find this comment in vma_map_lookup():

Default the offset to the physical address + a flag value.
Addresses of dynamically generated code can't be found in the vma
map. For those addresses the flagged value will be sent on to
the user space tools so they can be reported rather than just
thrown away.

Returned is the flag value 0x10000000 + vma when not found.

The test for negative overlay_tbl_offset does not work
because it is unsigned.

Signed-off-by: Roel Kluin <roel.kluin@xxxxxxxxx>
diff --git a/arch/powerpc/oprofile/cell/vma_map.c b/arch/powerpc/oprofile/cell/vma_map.c
index fff6666..41e0c22 100644
--- a/arch/powerpc/oprofile/cell/vma_map.c
+++ b/arch/powerpc/oprofile/cell/vma_map.c
@@ -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,
aSpu, &grd_val);
- if (overlay_tbl_offset < 0) {
+ if (overlay_tbl_offset >= 0x10000000) {
printk(KERN_ERR "SPU_PROF: "
"%s, line %d: Error finding SPU overlay table\n",
__func__, __LINE__);
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/