On Mar 31, 2011, at 2:25 PM, John Reiser wrote: >> I get the same sort of "set address range perms" I get on my real program >> (please, if somebody could give me more info about those, it would be >> helpful). >> >> ==12544== Warning: set address range perms: large range [0x13dde030, >> 0x31382050) (noaccess) > > RTFM: "Diagnostic message, mostly for benefit of the Valgrind > developers, to do with memory permissions." > > Valgrind gives such a message whenever the byte length [here > length=0x31382050, > base=0x13dde030; notice the square bracket on the left and the round bracket > on the right] exceeds some lower bound such as 256MB. The reason is that > such a large range is most unusual, and may indicate an error.
As far as reading the manual is concerned, I did, and in my initial post I stated: > I have attempted to find info on how to "set address range perms", but the > best > I have been able to find so far is that this is a message intended for > valgrind > developers, not users. The message you repeat above is the one I found in the manual prior to my initial post. Having found nothing else in the manual about this issue, and having found nothing else after some other searching, I thought I might find some help here. My interpretation of [0x13dde030, 0x31382050) was that it is start,end, closed on the left open on the right, not start and length as you suggest. If I interpret 0x31382050 as a size (decimal 825,761,872), I don't see my program ever allocating a block of that size. If I interpret the messages as [start,end) intervals, I do see that they agree with some of the sizes of blocks that my program allocates. I agree with you; I'm absolutely certain that the size of the allocation block is what triggers the message. In my case such a large allocation is not an error unless the system libraries can't handled it. As I've mentioned in both my previous posts, I am trying to determine whether the problem is (a) not really a problem (i.e. problem occurs only when using valgrind), (b) is a problem with the runtime library (the runtime library is leaking a block during realloc), (c) is a problem with valgrind not being able to deal with large allocations, or (d) a problem in my program. (d) seems unlikely because the simple test program exhibits a similar failure. If the problem is (c) I'd like to VERIFY that so I can quit searching, or if there's a way to build valgrind that will allow it to handle programs that allocate large memory blocks, I'd like to know how to do it. If it can't it can't, but I'd like to know I've exhausted all avenues before giving up on this. Bob H ------------------------------------------------------------------------------ Create and publish websites with WebMatrix Use the most popular FREE web apps or write code yourself; WebMatrix provides all the features you need to develop and publish your website. http://p.sf.net/sfu/ms-webmatrix-sf _______________________________________________ Valgrind-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/valgrind-users
