eafa39fbc3
... 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
65 lines
1.5 KiB
Bash
Executable File
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
|