perf symbols: Correct final kernel map guesses

If a 32bit userspace perf is running on a 64bit kernel, the end of the final
map in the kernel would incorrectly be set to 2^32-1 rather than 2^64-1.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1290658375-10342-1-git-send-email-imunsie@au1.ibm.com>
Signed-off-by: Ian Munsie <imunsie@au1.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Ian Munsie 2010-11-25 15:12:53 +11:00 committed by Arnaldo Carvalho de Melo
parent 37982ba0a0
commit 9d1faba5fe
2 changed files with 2 additions and 2 deletions

View File

@ -392,7 +392,7 @@ static void event_set_kernel_mmap_len(struct map **maps, event_t *self)
* a zero sized synthesized MMAP event for the kernel. * a zero sized synthesized MMAP event for the kernel.
*/ */
if (maps[MAP__FUNCTION]->end == 0) if (maps[MAP__FUNCTION]->end == 0)
maps[MAP__FUNCTION]->end = ~0UL; maps[MAP__FUNCTION]->end = ~0ULL;
} }
static int event__process_kernel_mmap(event_t *self, static int event__process_kernel_mmap(event_t *self,

View File

@ -121,7 +121,7 @@ static void __map_groups__fixup_end(struct map_groups *self, enum map_type type)
* We still haven't the actual symbols, so guess the * We still haven't the actual symbols, so guess the
* last map final address. * last map final address.
*/ */
curr->end = ~0UL; curr->end = ~0ULL;
} }
static void map_groups__fixup_end(struct map_groups *self) static void map_groups__fixup_end(struct map_groups *self)