svn commit: r286866 - in head: contrib/jemalloc contrib/jemalloc/doc contrib/jemalloc/include/jemalloc contrib/jemalloc/include/jemalloc/internal contrib/jemalloc/src include lib/libc/gen lib/libc/...

Jan Beich jbeich at FreeBSD.org
Tue Aug 18 19:50:21 UTC 2015


Jason Evans <jasone at freebsd.org> writes:

>>> Index: include/malloc_np.h
[...]
>>> +typedef void *(chunk_alloc_t)(void *, size_t, size_t, bool *, bool *, unsigned);
>>> +typedef bool (chunk_dalloc_t)(void *, size_t, bool, unsigned);

malloc_np.h changes regressing consumers isn't surprising given the lack
of tests for jemalloc shipped with FreeBSD.

  $ cc -include malloc_np.h -c -xc -</dev/null
  In file included from <built-in>:311:
  In file included from <command line>:1:
  /usr/include/malloc_np.h:39:55: error: unknown type name 'bool'
  typedef void *(chunk_alloc_t)(void *, size_t, size_t, bool *, bool *, unsigned);
                                                        ^
  /usr/include/malloc_np.h:39:63: error: unknown type name 'bool'
  typedef void *(chunk_alloc_t)(void *, size_t, size_t, bool *, bool *, unsigned);
                                                                ^
  [...]

>>> +  - Remove the --enable-dss options, and make dss non-optional on all platforms
>>> +    which support sbrk(2).

FREEBSD-upgrade still references it.

>>> Modified: head/contrib/jemalloc/doc/jemalloc.3
[...]
>>> @@ -53,8 +51,7 @@ make variable)\&.
>>>  .sp
>>>  .ft B
>>>  .nf
>>> -#include <stdlib\&.h>
>>> -#include <malloc_np\&.h>
>>> +#include <jemalloc/jemalloc\&.h>

Bad rebase.

>>> +  - Add sdallocx(), which implements sized deallocation.  The primary
>>> +    optimization over dallocx() is the removal of a metadata read, which often
>>> +    suffers an L1 cache miss.
>> [...]
>>> +  - Remove the *allocm() API, which is superseded by the *allocx() API.
>> 
>> Symbol.map and manpages haven't been updated.
>> [...]
>
> Committed; thanks!

Stale links have to be removed as well.

Index: contrib/jemalloc/FREEBSD-diffs
===================================================================
--- contrib/jemalloc/FREEBSD-diffs	(revision 286894)
+++ contrib/jemalloc/FREEBSD-diffs	(working copy)
@@ -20,7 +20,14 @@ diff --git a/doc/jemalloc.xml.in b/doc/jemalloc.xm
    </refsect1>
    <refsynopsisdiv>
      <title>SYNOPSIS</title>
-@@ -2759,4 +2770,18 @@ malloc_conf = "lg_chunk:24";]]></programlisting></para>
+     <funcsynopsis>
+-      <funcsynopsisinfo>#include <<filename class="headerfile">jemalloc/jemalloc.h</filename>></funcsynopsisinfo>
++      <funcsynopsisinfo>#include <<filename class="headerfile">stdlib.h</filename>>
++#include <<filename class="headerfile">malloc_np.h</filename>></funcsynopsisinfo>
+       <refsect2>
+         <title>Standard API</title>
+         <funcprototype>
+@@ -2759,4 +2771,18 @@ malloc_conf = "lg_chunk:24";]]></programlisting></para>
      <para>The <function>posix_memalign<parameter/></function> function conforms
      to IEEE Std 1003.1-2001 (“POSIX.1”).</para>
    </refsect1>
Index: contrib/jemalloc/FREEBSD-upgrade
===================================================================
--- contrib/jemalloc/FREEBSD-upgrade	(revision 286894)
+++ contrib/jemalloc/FREEBSD-upgrade	(working copy)
@@ -72,7 +72,7 @@ do_extract() {
     patch -p1 < "${src}/FREEBSD-diffs"
     find . -name '*.orig' -delete
     # Generate various files.
-    ./autogen.sh --enable-cc-silence --enable-dss --enable-xmalloc \
+    ./autogen.sh --enable-cc-silence --enable-xmalloc \
       --enable-utrace --with-xslroot=/usr/local/share/xsl/docbook \
       --with-private-namespace=__ --with-lg-page-sizes=12,13,14,16
     gmake dist
Index: contrib/jemalloc/doc/jemalloc.3
===================================================================
--- contrib/jemalloc/doc/jemalloc.3	(revision 286894)
+++ contrib/jemalloc/doc/jemalloc.3	(working copy)
@@ -51,7 +51,8 @@ make variable)\&.
 .sp
 .ft B
 .nf
-#include <jemalloc/jemalloc\&.h>
+#include <stdlib\&.h>
+#include <malloc_np\&.h>
 .fi
 .ft
 .SS "Standard API"
Index: include/malloc_np.h
===================================================================
--- include/malloc_np.h	(revision 286893)
+++ include/malloc_np.h	(working copy)
@@ -33,6 +33,7 @@
 #define	_MALLOC_NP_H_
 #include <sys/cdefs.h>
 #include <sys/types.h>
+#include <stdbool.h>
 #include <strings.h>
 
 __BEGIN_DECLS
Index: ObsoleteFiles.inc
===================================================================
--- ObsoleteFiles.inc	(revision 286893)
+++ ObsoleteFiles.inc	(working copy)
@@ -38,6 +38,12 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20150818: *allocm() are gone in jemalloc 4.0.0
+OLD_FILES+=usr/share/man/man3/allocm.3.gz
+OLD_FILES+=usr/share/man/man3/dallocm.3.gz
+OLD_FILES+=usr/share/man/man3/nallocm.3.gz
+OLD_FILES+=usr/share/man/man3/rallocm.3.gz
+OLD_FILES+=usr/share/man/man3/sallocm.3.gz
 # 20150802: Remove netbsd's test on pw(8)
 OLD_FILES+=usr/tests/usr.sbin/pw/pw_test
 # 20150719: Remove libarchive.pc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 602 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20150818/cf37376c/attachment.bin>


More information about the svn-src-head mailing list