diff options
author | Serapheim Dimitropoulos <[email protected]> | 2020-07-10 15:30:31 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2020-07-10 15:30:31 -0700 |
commit | 6f1db5f37ede685ebe55d1549c635e0aef4661b5 (patch) | |
tree | 61f9cb5eb43972eda9a8512717e7d4d0bad4bef8 /lib/libzpool | |
parent | f040a7b0f8bad1cea97b0148076608db0c183d2a (diff) |
Unconditionally enable debugging for libzpool
We already enable -DDEBUG unconditionally (meaning regardless
of this is a debug build or a performance build) for zdb and
ztest as they are mostly used for development and debugging.
This patch enables -DDEBUG for libzpool extending the debugging
checks for zdb, ztest, and a couple of other test utilities.
In addition to passing -DDEBUG we also enable -DZFS_DEBUG so
all assertion checks work s expected. We do so not only in
libzpool but in every utility that links to it, even if the
utility doesn't directly use any functionality wrapped in
ZFS_DEBUG macro definitions. The reason is that these utilities
may still include headers that contain structs that have more
fields when ZFS_DEBUG is defined. This can be a problem as
enabling that flag for libzpool but not for zdb can lead into
random problems (e.g. segmentation faults) as zdb may be have
an incorrect view of a struct passed to it by libzpool.
Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: Matthew Ahrens <[email protected]>
Signed-off-by: Serapheim Dimitropoulos <[email protected]>
Closes #10549
Diffstat (limited to 'lib/libzpool')
-rw-r--r-- | lib/libzpool/Makefile.am | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/libzpool/Makefile.am b/lib/libzpool/Makefile.am index 6256d5e73..7924a425d 100644 --- a/lib/libzpool/Makefile.am +++ b/lib/libzpool/Makefile.am @@ -7,6 +7,9 @@ VPATH = \ $(top_srcdir)/module/os/linux/zfs \ $(top_srcdir)/lib/libzpool +# Unconditionally enable debugging for libzpool +AM_CPPFLAGS += -DDEBUG -UNDEBUG -DZFS_DEBUG + # Suppress unused but set variable warnings often due to ASSERTs AM_CFLAGS += $(NO_UNUSED_BUT_SET_VARIABLE) |