1 /*-
2 * Copyright (c) 2018 VMware, Inc.
3 *
4 * SPDX-License-Identifier: (BSD-2-Clause OR GPL-2.0)
5 *
6 * $FreeBSD$
7 */
8
9 /* Some common utilities used by the VMCI kernel module. */
10
11 #ifndef _VMCI_KERNEL_DEFS_H_
12 #define _VMCI_KERNEL_DEFS_H_
13
14 #include <sys/param.h>
15 #include <sys/systm.h>
16
17 typedef uint32_t PPN;
18
19 #define ASSERT(cond) KASSERT(cond, ("%s", #cond))
20 #define ASSERT_ON_COMPILE(e) _Static_assert(e, #e);
21
22 #define LIKELY(_exp) __predict_true(_exp)
23 #define UNLIKELY(_exp) __predict_false(_exp)
24
25 #define CONST64U(c) UINT64_C(c)
26
27 #define ARRAYSIZE(a) nitems(a)
28
29 #define ROUNDUP(x, y) roundup(x, y)
30 #define CEILING(x, y) howmany(x, y)
31
32 #endif /* !_VMCI_KERNEL_DEFS_H_ */
Cache object: e070524ac003d4d5a6b61523086102e1
|