[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: valgrind/coregrind
From: Jeremy Fitzhardinge <jeremy () goop ! org>
Date: 2005-03-23 3:30:30
Message-ID: 20050323033030.D3B5A3CC () office ! kde ! org
[Download RAW message or body]
CVS commit by fitzhardinge:
Handle a couple kinds of executable mutation: a read-only bss, and a
zero-length segment.
M +9 -7 ume.c 1.42
--- valgrind/coregrind/ume.c #1.41:1.42
@@ -244,4 +244,5 @@ ESZ(Addr) mapelf(struct elfinfo *e, ESZ(
brkaddr = addr+memsz;
+ if (ROUNDUP(bss, align)-ROUNDDN(addr, align) > 0) {
res = mmap((char *)ROUNDDN(addr, align),
ROUNDUP(bss, align)-ROUNDDN(addr, align),
@@ -249,4 +250,5 @@ ESZ(Addr) mapelf(struct elfinfo *e, ESZ(
check_mmap(res, (char*)ROUNDDN(addr,align),
ROUNDUP(bss, align)-ROUNDDN(addr, align));
+ }
/* if memsz > filesz, then we need to fill the remainder with zeroed pages */
@@ -262,5 +264,5 @@ ESZ(Addr) mapelf(struct elfinfo *e, ESZ(
bytes = bss & (VKI_PAGE_SIZE - 1);
- if (bytes > 0) {
+ if ((prot & PROT_WRITE) && (bytes > 0)) {
bytes = VKI_PAGE_SIZE - bytes;
memset((char *)bss, 0, bytes);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic