Em Fri, Sep 26, 2014 at 09:54:01PM +0900, Chang Hyun Park escreveu:
> perf trace for syscalls resulted in mmap return values being stripped of
> the top 32 bits, and actually printing only the lower 32 bits. This was
> because the ret value was of an 'int' type and not a 'long' type.
> 
> The Problem:
> 991258501.244 ( 0.004 ms): mmap(len: 40001536, prot: READ|WRITE, flags:
>               PRIVATE|ANONYMOUS, fd: -1) = 0x56691000
> 991258501.257 ( 0.000 ms): minfault [_int_malloc+0x1038] =>
>                           //anon@0x7fa056691008 //(d.)
> 
> The first line shows an mmap, which succeeds and returns 0x56691000.
> However the next line shows a memory access to that virtual memory area,
> specifically to 0x7fa056691008. The upper 32 bit is lost due to the
> problem mentioned above, and thus mmap's return value didn't have the
> upper 0x7fa0.

Thanks, applied to my perf/core branch.

- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to