public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
* [glibc/release/2.28/master] Fix assertion in malloc.c:tcache_get.
@ 2019-10-30 12:21 Arjun Shankar
  0 siblings, 0 replies; only message in thread
From: Arjun Shankar @ 2019-10-30 12:21 UTC (permalink / raw)
  To: glibc-cvs

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3640758943c856268bc12a3307838c2a65d2f9ea

commit 3640758943c856268bc12a3307838c2a65d2f9ea
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Mon Feb 4 23:46:58 2019 +0000

    Fix assertion in malloc.c:tcache_get.
    
    One of the warnings that appears with -Wextra is "ordered comparison
    of pointer with integer zero" in malloc.c:tcache_get, for the
    assertion:
    
      assert (tcache->entries[tc_idx] > 0);
    
    Indeed, a "> 0" comparison does not make sense for
    tcache->entries[tc_idx], which is a pointer.  My guess is that
    tcache->counts[tc_idx] is what's intended here, and this patch changes
    the assertion accordingly.
    
    Tested for x86_64.
    
    	* malloc/malloc.c (tcache_get): Compare tcache->counts[tc_idx]
    	with 0, not tcache->entries[tc_idx].
    
    (cherry picked from commit 77dc0d8643aa99c92bf671352b0a8adde705896f)

Diff:
---
 ChangeLog       | 5 +++++
 malloc/malloc.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 416c61a..668ae78 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-02-04  Joseph Myers  <joseph@codesourcery.com>
+
+	* malloc/malloc.c (tcache_get): Compare tcache->counts[tc_idx]
+	with 0, not tcache->entries[tc_idx].
+
 2019-09-13  Wilco Dijkstra  <wdijkstr@arm.com>
 
 	* string/memmem.c (__memmem): Rewrite to improve performance.
diff --git a/malloc/malloc.c b/malloc/malloc.c
index 0e79700..78edbfc 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -2941,7 +2941,7 @@ tcache_get (size_t tc_idx)
 {
   tcache_entry *e = tcache->entries[tc_idx];
   assert (tc_idx < TCACHE_MAX_BINS);
-  assert (tcache->entries[tc_idx] > 0);
+  assert (tcache->counts[tc_idx] > 0);
   tcache->entries[tc_idx] = e->next;
   --(tcache->counts[tc_idx]);
   e->key = NULL;


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-10-30 12:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-30 12:21 [glibc/release/2.28/master] Fix assertion in malloc.c:tcache_get Arjun Shankar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).