svn commit: r352456 - head/contrib/jemalloc/src

Konstantin Belousov kib at FreeBSD.org
Tue Sep 17 18:36:30 UTC 2019


Author: kib
Date: Tue Sep 17 18:36:29 2019
New Revision: 352456
URL: https://svnweb.freebsd.org/changeset/base/352456

Log:
  realloc(x, 0) should not return NULL.
  
  See http://www.open-std.org/jtc1/sc22/wg14/www/docs/summary.htm#dr_400.
  Upstream jemalloc issue is opened by emaste at
  https://github.com/jemalloc/jemalloc/issues/1629.
  
  Reviewed by:	emaste
  PR:	240456
  Sponsored by:	The FreeBSD Foundation
  MFC after:	1 week
  DIfferential revision:	https://reviews.freebsd.org/D21632

Modified:
  head/contrib/jemalloc/src/jemalloc.c

Modified: head/contrib/jemalloc/src/jemalloc.c
==============================================================================
--- head/contrib/jemalloc/src/jemalloc.c	Tue Sep 17 18:32:18 2019	(r352455)
+++ head/contrib/jemalloc/src/jemalloc.c	Tue Sep 17 18:36:29 2019	(r352456)
@@ -2299,21 +2299,6 @@ je_realloc(void *ptr, size_t size) {
 	LOG("core.realloc.entry", "ptr: %p, size: %zu\n", ptr, size);
 
 	if (unlikely(size == 0)) {
-		if (ptr != NULL) {
-			/* realloc(ptr, 0) is equivalent to free(ptr). */
-			UTRACE(ptr, 0, 0);
-			tcache_t *tcache;
-			tsd_t *tsd = tsd_fetch();
-			if (tsd_reentrancy_level_get(tsd) == 0) {
-				tcache = tcache_get(tsd);
-			} else {
-				tcache = NULL;
-			}
-			ifree(tsd, ptr, tcache, true);
-
-			LOG("core.realloc.exit", "result: %p", NULL);
-			return NULL;
-		}
 		size = 1;
 	}
 


More information about the svn-src-all mailing list