Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Feb 2018 19:18:00 +0000 (UTC)
From:      Mark Johnston <markj@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r329238 - head/sys/contrib/zstd/lib/freebsd
Message-ID:  <201802131918.w1DJI0jD047524@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: markj
Date: Tue Feb 13 19:18:00 2018
New Revision: 329238
URL: https://svnweb.freebsd.org/changeset/base/329238

Log:
  Move zstd malloc()/free()/calloc() macros to stdlib.h.
  
  The definitions otherwise leak into anything that includes zstd.h,
  which is not desirable for native FreeBSD code.
  
  Reviewed by:	allanjude, cem, imp
  MFC after:	2 weeks
  Differential Revision:	https://reviews.freebsd.org/D14352

Modified:
  head/sys/contrib/zstd/lib/freebsd/stdlib.h
  head/sys/contrib/zstd/lib/freebsd/zstd_kfreebsd.h

Modified: head/sys/contrib/zstd/lib/freebsd/stdlib.h
==============================================================================
--- head/sys/contrib/zstd/lib/freebsd/stdlib.h	Tue Feb 13 19:17:48 2018	(r329237)
+++ head/sys/contrib/zstd/lib/freebsd/stdlib.h	Tue Feb 13 19:18:00 2018	(r329238)
@@ -1,3 +1,44 @@
-/* This file is in the public domain */
-/* $FreeBSD$ */
-#include "zstd_kfreebsd.h"
+/*-
+ * Copyright (c) 2014-2015 Allan Jude <allanjude@freebsd.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+#ifndef _ZSTD_FREEBSD_STDLIB_H_
+#define	_ZSTD_FREEBSD_STDLIB_H_
+
+#ifdef _KERNEL
+
+#include <sys/malloc.h>
+
+MALLOC_DECLARE(M_ZSTD);
+
+#define	malloc(x)	(malloc)((x), M_ZSTD, M_WAITOK)
+#define	free(x)		(free)((x), M_ZSTD)
+#define	calloc(a, b)	(mallocarray)((a), (b), M_ZSTD, M_WAITOK | M_ZERO)
+
+#endif /* _KERNEL */
+
+#endif /* _ZSTD_FREEBSD_STDLIB_H_ */

Modified: head/sys/contrib/zstd/lib/freebsd/zstd_kfreebsd.h
==============================================================================
--- head/sys/contrib/zstd/lib/freebsd/zstd_kfreebsd.h	Tue Feb 13 19:17:48 2018	(r329237)
+++ head/sys/contrib/zstd/lib/freebsd/zstd_kfreebsd.h	Tue Feb 13 19:18:00 2018	(r329238)
@@ -39,14 +39,6 @@ extern "C" {
 #ifndef BUILDING_ZFS
 #include <sys/stddef.h>	/* ptrdiff_t */
 #endif
-#include <sys/malloc.h>
-
-MALLOC_DECLARE(M_ZSTD);
-
-#define malloc(x)	(malloc)((x), M_ZSTD, M_WAITOK)
-#define free(x)		(free)((x), M_ZSTD)
-/* in zstd's use of calloc, a is always 1 */
-#define calloc(a,b)	(mallocarray)((a), (b), M_ZSTD, M_WAITOK | M_ZERO)
 #endif
 
 #ifdef __cplusplus



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201802131918.w1DJI0jD047524>