aboutsummaryrefslogtreecommitdiff
path: root/malloc
diff options
context:
space:
mode:
Diffstat (limited to 'malloc')
-rw-r--r--malloc/malloc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/malloc/malloc.c b/malloc/malloc.c
index bc3f11740c..9753731174 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -3736,6 +3736,13 @@ __libc_realloc (void *oldmem, size_t bytes)
void *newmem;
#if HAVE_MREMAP
+ /* There is no time when we own both the old and new pointers
+ here, so we have no choice but to record the trace event in a
+ way that might lead to an inversion. This is a rare enough
+ case that a double inversion is too likely to worry about,
+ and the trace converter can fix a lone single inversion. We
+ choose to record it inside the 'if' because it's convient to
+ us. */
newp = mremap_chunk (oldp, nb);
if (newp)
{