Date: Sun, 6 Jul 2014 19:46:32 +0000 (UTC) From: Rui Paulo <rpaulo@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r361001 - in head/devel/umem: . files Message-ID: <201407061946.s66JkWk3085309@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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@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; + + /*
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201407061946.s66JkWk3085309>