|
From: Julian S. <js...@ac...> - 2013-06-10 11:59:12
|
Although it doesn't address the underlying aspacem problems, a possible workaround to Alexander's problem is to use the DISRV branch, which (amongst things) changes the debuginfo reader so it doesn't have to map in the entire file. Instead only a fixed amount of memory (1MB approximately) is required, regardless of the file size. See recent message on this list "Remote debuginfo server". This doesn't yet work for MacOS, since I haven't changed the Mach-O reader to use the new internal interface (priv_image.h), but that's in progress. J On 06/04/2013 08:08 PM, Philippe Waroquiers wrote: > On Tue, 2013-06-04 at 18:55 +0400, Alexander Potapenko wrote: >> I'm also curious about other potential consequences of this issue. >> Looks like arbitrary mmap() calls in Valgrind may unexpectedly fail on >> 32-bit Darwin if they overlap with the reserved ranges. > It looks like there is already a bunch of tricks which are bypassing > or ignoring differences between Valgrind aspacemgr view of the mappings > and the real kernel mappings. > Search for several VGO_darwin conditional compilations in aspacemgr-linux.c. > > Your specific problem might be a special case of a > maybe more general problem which is handled in VG_(am_mmap_anon_float_valgrind) > but not in VG_(am_mmap_file_float_valgrind_flags). > > It might maybe be better to have a single place that calls > "advise" then "mmap", and that would do recovery on Darwin > by retrying without MAP_FIXED when failing > (this would also be useful for an "outer valgrind" running > an "inner valgrind", as the inner valgrind encounters > similar differences as it cannot observe the mmap syscalls > done by the outer valgrind). > > Philippe > > > > ------------------------------------------------------------------------------ > How ServiceNow helps IT people transform IT departments: > 1. A cloud service to automate IT design, transition and operations > 2. Dashboards that offer high-level views of enterprise services > 3. A single system of record for all IT processes > http://p.sf.net/sfu/servicenow-d2d-j > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > |