Print this page
Reworking of L2ARC persistency to simplify design.
*** 23,32 ****
--- 23,33 ----
* Use is subject to license terms.
*/
/*
* Copyright (c) 2012 by Delphix. All rights reserved.
+ * Copyright 2013 Saso Kiselkov. All rights reserved.
*/
/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
*** 130,139 ****
--- 131,148 ----
#define ASSERT3U(x, y, z) ((void)0)
#define ASSERT3P(x, y, z) ((void)0)
#define ASSERT0(x) ((void)0)
#endif
+ /*
+ * Compile-time assertion. The condition 'x' must be constant.
+ */
+ #define CTASSERT(x) _CTASSERT(x, __LINE__)
+ #define _CTASSERT(x, y) __CTASSERT(x, y)
+ #define __CTASSERT(x, y) \
+ typedef char __compile_time_assertion__ ## y [(x) ? 1 : -1]
+
#ifdef _KERNEL
extern void abort_sequence_enter(char *);
extern void debug_enter(char *);