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 <behlendorf1@llnl.gov> Reviewed-by: Matthew Ahrens <mahrens@delphix.com> Signed-off-by: Serapheim Dimitropoulos <serapheim@delphix.com> Closes #10549
This commit is contained in:
parent
f040a7b0f8
commit
6f1db5f37e
|
@ -4,7 +4,7 @@ include $(top_srcdir)/config/Rules.am
|
|||
AM_CFLAGS += $(FRAME_LARGER_THAN)
|
||||
|
||||
# Unconditionally enable ASSERTs
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG -DZFS_DEBUG
|
||||
|
||||
bin_PROGRAMS = raidz_test
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
include $(top_srcdir)/config/Rules.am
|
||||
|
||||
# Unconditionally enable debugging for zdb
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG -DZFS_DEBUG
|
||||
|
||||
sbin_PROGRAMS = zdb
|
||||
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
include $(top_srcdir)/config/Rules.am
|
||||
|
||||
# Unconditionally enable debugging for zhack
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG -DZFS_DEBUG
|
||||
|
||||
sbin_PROGRAMS = zhack
|
||||
|
||||
zhack_SOURCES = \
|
||||
|
|
|
@ -7,7 +7,7 @@ AM_CFLAGS += $(NO_FORMAT_TRUNCATION)
|
|||
AM_CFLAGS += $(FRAME_LARGER_THAN)
|
||||
|
||||
# Unconditionally enable ASSERTs
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG -DZFS_DEBUG
|
||||
|
||||
sbin_PROGRAMS = ztest
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ DEFAULT_INCLUDES += \
|
|||
-I$(top_srcdir)/lib/libspl/include
|
||||
|
||||
# Unconditionally enable ASSERTs
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG
|
||||
AM_CPPFLAGS += -DDEBUG -UNDEBUG -DZFS_DEBUG
|
||||
|
||||
pkgexec_PROGRAMS = btree_test
|
||||
btree_test_SOURCES = btree_test.c
|
||||
|
|
Loading…
Reference in New Issue