svn commit: r361001 - in head/devel/umem: . files
Rui Paulo
rpaulo at FreeBSD.org
Sun Jul 6 19:46:32 UTC 2014
Author: rpaulo (src committer)
Date: Sun Jul 6 19:46:31 2014
New Revision: 361001
URL: http://svnweb.freebsd.org/changeset/ports/361001
QAT: https://qat.redports.org/buildarchive/r361001/
Log:
umem: fix the insta-crash of libumem
On amd64, libumem simply crashes because the size of the the cpu cache
structure is not a power of two. We need to pad it on LP64 architectures as
well.
Reviewed by: bapt
Approved by: bapt
Added:
head/devel/umem/files/
head/devel/umem/files/patch-umem_impl.h (contents, props changed)
Modified:
head/devel/umem/Makefile
Modified: head/devel/umem/Makefile
==============================================================================
--- head/devel/umem/Makefile Sun Jul 6 19:20:32 2014 (r361000)
+++ head/devel/umem/Makefile Sun Jul 6 19:46:31 2014 (r361001)
@@ -3,15 +3,14 @@
PORTNAME= umem
PORTVERSION= 1.0.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel
MASTER_SITES= https://labs.omniti.com/portableumem/releases/${PORTVERSION:R}/
MAINTAINER= ports at FreeBSD.org
COMMENT= Port of the Solaris memory allocator
-USES= libtool:keepla
-USE_BZIP2= yes
+USES= libtool:keepla tar:bzip2
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
ONLY_FOR_ARCHS= i386 amd64
Added: head/devel/umem/files/patch-umem_impl.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/umem/files/patch-umem_impl.h Sun Jul 6 19:46:31 2014 (r361001)
@@ -0,0 +1,15 @@
+--- umem_impl.h.orig 2014-07-04 11:29:34.393156748 -0700
++++ umem_impl.h 2014-07-04 11:29:54.599155604 -0700
+@@ -255,12 +255,7 @@
+ int cc_prounds; /* number of objects in previous mag */
+ int cc_magsize; /* number of rounds in a full mag */
+ int cc_flags; /* CPU-local copy of cache_flags */
+-#if (!defined(_LP64) || defined(UMEM_PTHREAD_MUTEX_TOO_BIG)) && !defined(_WIN32)
+- /* on win32, UMEM_CPU_PAD evaluates to zero, and the MS compiler
+- * won't allow static initialization of arrays containing structures
+- * that contain zero size arrays */
+ char cc_pad[UMEM_CPU_PAD]; /* for nice alignment (32-bit) */
+-#endif
+ } umem_cpu_cache_t;
+
+ /*
More information about the svn-ports-all
mailing list