mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Replace *CTASSERT() with _Static_assert()
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #12993
This commit is contained in:
@@ -125,7 +125,6 @@ void spl_dumpstack(void);
|
||||
"failed (0 == %lld)\n", \
|
||||
(long long) (_verify3_right)); \
|
||||
} while (0)
|
||||
#define CTASSERT_GLOBAL(x) CTASSERT(x)
|
||||
|
||||
/*
|
||||
* Debugging disabled (--disable-debug)
|
||||
|
||||
@@ -109,8 +109,9 @@ enum scope_prefix_types {
|
||||
* dmu_prefetch_max
|
||||
*/
|
||||
#define ZFS_MODULE_PARAM(scope_prefix, name_prefix, name, type, perm, desc) \
|
||||
CTASSERT_GLOBAL( \
|
||||
sizeof (scope_prefix) == sizeof (enum scope_prefix_types)); \
|
||||
_Static_assert( \
|
||||
sizeof (scope_prefix) == sizeof (enum scope_prefix_types), \
|
||||
"" #scope_prefix " size mismatch with enum scope_prefix_types"); \
|
||||
module_param(name_prefix ## name, type, perm); \
|
||||
MODULE_PARM_DESC(name_prefix ## name, desc)
|
||||
|
||||
@@ -138,8 +139,9 @@ enum scope_prefix_types {
|
||||
*/
|
||||
#define ZFS_MODULE_PARAM_CALL( \
|
||||
scope_prefix, name_prefix, name, setfunc, getfunc, perm, desc) \
|
||||
CTASSERT_GLOBAL( \
|
||||
sizeof (scope_prefix) == sizeof (enum scope_prefix_types)); \
|
||||
_Static_assert( \
|
||||
sizeof (scope_prefix) == sizeof (enum scope_prefix_types), \
|
||||
"" #scope_prefix " size mismatch with enum scope_prefix_types"); \
|
||||
module_param_call(name_prefix ## name, setfunc, getfunc, \
|
||||
&name_prefix ## name, perm); \
|
||||
MODULE_PARM_DESC(name_prefix ## name, desc)
|
||||
@@ -150,8 +152,9 @@ enum scope_prefix_types {
|
||||
*/
|
||||
#define ZFS_MODULE_VIRTUAL_PARAM_CALL( \
|
||||
scope_prefix, name_prefix, name, setfunc, getfunc, perm, desc) \
|
||||
CTASSERT_GLOBAL(\
|
||||
sizeof (scope_prefix) == sizeof (enum scope_prefix_types)); \
|
||||
_Static_assert( \
|
||||
sizeof (scope_prefix) == sizeof (enum scope_prefix_types), \
|
||||
"" #scope_prefix " size mismatch with enum scope_prefix_types"); \
|
||||
module_param_call(name_prefix ## name, setfunc, getfunc, NULL, perm); \
|
||||
MODULE_PARM_DESC(name_prefix ## name, desc)
|
||||
|
||||
|
||||
@@ -120,13 +120,6 @@ void spl_dumpstack(void);
|
||||
(long long) (_verify3_right)); \
|
||||
} while (0)
|
||||
|
||||
#define CTASSERT_GLOBAL(x) _CTASSERT(x, __LINE__)
|
||||
#define CTASSERT(x) { _CTASSERT(x, __LINE__); }
|
||||
#define _CTASSERT(x, y) __CTASSERT(x, y)
|
||||
#define __CTASSERT(x, y) \
|
||||
typedef char __attribute__((unused)) \
|
||||
__compile_time_assertion__ ## y[(x) ? 1 : -1]
|
||||
|
||||
/*
|
||||
* Debugging disabled (--disable-debug)
|
||||
*/
|
||||
|
||||
@@ -250,7 +250,8 @@ typedef struct l2arc_dev_hdr_phys {
|
||||
const uint64_t dh_pad[30]; /* pad to 512 bytes */
|
||||
zio_eck_t dh_tail;
|
||||
} l2arc_dev_hdr_phys_t;
|
||||
CTASSERT_GLOBAL(sizeof (l2arc_dev_hdr_phys_t) == SPA_MINBLOCKSIZE);
|
||||
_Static_assert(sizeof (l2arc_dev_hdr_phys_t) == SPA_MINBLOCKSIZE,
|
||||
"l2arc_dev_hdr_phys_t wrong size");
|
||||
|
||||
/*
|
||||
* A single ARC buffer header entry in a l2arc_log_blk_phys_t.
|
||||
@@ -307,10 +308,12 @@ typedef struct l2arc_log_blk_phys {
|
||||
* The size of l2arc_log_blk_phys_t has to be power-of-2 aligned with
|
||||
* SPA_MINBLOCKSHIFT because of L2BLK_SET_*SIZE macros.
|
||||
*/
|
||||
CTASSERT_GLOBAL(IS_P2ALIGNED(sizeof (l2arc_log_blk_phys_t),
|
||||
1ULL << SPA_MINBLOCKSHIFT));
|
||||
CTASSERT_GLOBAL(sizeof (l2arc_log_blk_phys_t) >= SPA_MINBLOCKSIZE);
|
||||
CTASSERT_GLOBAL(sizeof (l2arc_log_blk_phys_t) <= SPA_MAXBLOCKSIZE);
|
||||
_Static_assert(IS_P2ALIGNED(sizeof (l2arc_log_blk_phys_t),
|
||||
1ULL << SPA_MINBLOCKSHIFT), "l2arc_log_blk_phys_t misaligned");
|
||||
_Static_assert(sizeof (l2arc_log_blk_phys_t) >= SPA_MINBLOCKSIZE,
|
||||
"l2arc_log_blk_phys_t too small");
|
||||
_Static_assert(sizeof (l2arc_log_blk_phys_t) <= SPA_MAXBLOCKSIZE,
|
||||
"l2arc_log_blk_phys_t too big");
|
||||
|
||||
/*
|
||||
* These structures hold in-flight abd buffers for log blocks as they're being
|
||||
|
||||
@@ -521,8 +521,8 @@ typedef struct vdev_boot_envblock {
|
||||
sizeof (zio_eck_t)];
|
||||
zio_eck_t vbe_zbt;
|
||||
} vdev_boot_envblock_t;
|
||||
|
||||
CTASSERT_GLOBAL(sizeof (vdev_boot_envblock_t) == VDEV_PAD_SIZE);
|
||||
_Static_assert(sizeof (vdev_boot_envblock_t) == VDEV_PAD_SIZE,
|
||||
"vdev_boot_envblock_t wrong size");
|
||||
|
||||
typedef struct vdev_label {
|
||||
char vl_pad1[VDEV_PAD_SIZE]; /* 8K */
|
||||
|
||||
Reference in New Issue
Block a user