Summary: | vgdb must align pages to VKI_SHMLBA (16KB) on ARM | ||
---|---|---|---|
Product: | [Developer tools] valgrind | Reporter: | John Reiser <jreiser> |
Component: | general | Assignee: | Julian Seward <jseward> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | philippe.waroquiers |
Priority: | NOR | ||
Version: | 3.7 SVN | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
on arm, round to SHLMBA
on arm, round to SHLMBA (correct version now I hope :) on arm, round to SHLMBA (handled comments) |
Description
John Reiser
2012-01-08 15:28:38 UTC
I will modify VG_(m_mmap_file_float_valgrind_flags) with a fix similar to what was done for bug 222545. Note that when looking at the current code, I found one strange thing in am_mmap_file_float_valgrind_flags : the call to am_get_advisory indicates the call is for the client, while it should be for Valgrind. (In reply to comment #1) > I will modify VG_(m_mmap_file_float_valgrind_flags) with a fix similar to > what was done for bug 222545. This is still to be done. > Note that when looking at the current code, I found one strange thing > in am_mmap_file_float_valgrind_flags : the call to am_get_advisory > indicates the call is for the client, while it should be for Valgrind. Fixed the forClient arg to indicate this is a Valgrind mmap (revision 12326). Created attachment 68125 [details]
on arm, round to SHLMBA
I currently have no access to an ARM system.
John, it would be nice if you could review this patch
and validate it works/solves the problem on ARM.
Thanks
Created attachment 68126 [details]
on arm, round to SHLMBA (correct version now I hope :)
(In reply to comment #4) Works for me. Perhaps only VKI_MAP_SHARED requires aligning to VKI_SHMLBA: + if ((VKI_MAP_SHARED & flags) && (VKI_SHMLBA > VKI_PAGE_SIZE)) { ... + if ((VKI_MAP_SHARED & flags) && (VKI_SHMLBA > VKI_PAGE_SIZE)) but just testing only (VKI_SHMLBA > VKI_PAGE_SIZE) is OK for now. (In reply to comment #4) > Created an attachment (id=68126) [details] > on arm, round to SHLMBA (correct version now I hope :) ok to commit w/ two small changes: * add this #if !defined(VGA_arm) aspacem_assert(VKI_SHMLBA == VKI_PAGE_SIZE); #endif * pls add { } around else clause req.len = length; Created attachment 68206 [details]
on arm, round to SHLMBA (handled comments)
* inserted {} around else reg.len = length;
* added assert for non arm
* only round to SHMLBA for shared case
Regtested on linux x86 (still no access to an ARM system,
so a final check on ARM would be nice before commit).
(In reply to comment #7) > Regtested on linux x86 (still no access to an ARM system, > so a final check on ARM would be nice before commit). After some limited validation on Android arm emulator, committed in revision 12366 |