Files
src/copy-builtin
T
Timothy Day eafa39fbc3 build: add ZFS_DEBUG Kconfig for copy-builtin
... so we can toggle ZFS debug assertions from the
Linux kernel build without having to regenerate the
ZFS patch.

Update the qemu test script to also set this kernel
config.

Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Timothy Day <timday@thelustrecollective.com>
Co-authored-by: Timothy Day <timday@thelustrecollective.com>
Closes #18595
2026-05-29 09:40:14 -07:00

65 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
set -ef
usage()
{
echo "usage: $0 <kernel source tree>" >&2
exit 1
}
if ! [ -d "$1" ] ; then
usage
fi
KERNEL_DIR="$1"
if ! [ -e 'zfs_config.h' ]
then
echo "$0: you did not run configure, or you're not in the ZFS source directory."
echo "$0: run configure with --with-linux=$KERNEL_DIR and --enable-linux-builtin."
exit 1
fi >&2
make clean ||:
make gitrev
rm -rf "$KERNEL_DIR/include/zfs" "$KERNEL_DIR/fs/zfs"
cp -R include "$KERNEL_DIR/include/zfs"
cp -R module "$KERNEL_DIR/fs/zfs"
cp zfs_config.h "$KERNEL_DIR/include/zfs/"
cat > "$KERNEL_DIR/fs/zfs/Kconfig" <<EOF
config ZFS
tristate "ZFS filesystem support"
depends on EFI_PARTITION
depends on BLOCK
select ZLIB_INFLATE
select ZLIB_DEFLATE
help
This is the ZFS filesystem from the OpenZFS project.
See https://github.com/openzfs/zfs
To compile this file system support as a module, choose M here.
If unsure, say N.
config ZFS_DEBUG
bool "ZFS debugging"
depends on ZFS
help
Enable ZFS debugging. This turns on all ASSERT() assertions,
enables additional debug-only code paths, and promotes
compiler warnings to errors. This should only be enabled for
development or troubleshooting.
If unsure, say N.
EOF
sed -i '/source "fs\/ext2\/Kconfig\"/i\source "fs/zfs/Kconfig"' "$KERNEL_DIR/fs/Kconfig"
echo 'obj-$(CONFIG_ZFS) += zfs/' >> "$KERNEL_DIR/fs/Makefile"
echo "$0: done. now you can build the kernel with ZFS support." >&2
echo "$0: make sure you enable ZFS support (CONFIG_ZFS) before building." >&2