Notes for test-runner usage
Kernel configuration
The test-runner tool requires a kernel that is at least build with these minimal options for a successful boot.
CONFIG_VIRTIO=y
CONFIG_VIRTIO_PCI=y
CONFIG_NET=y
CONFIG_INET=y
CONFIG_NET_9P=y
CONFIG_NET_9P_VIRTIO=y
CONFIG_9P_FS=y
CONFIG_9P_FS_POSIX_ACL=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_DEVTMPFS=y
CONFIG_DEBUG_FS=y
For Bluetooth functionality:
CONFIG_BT=y
CONFIG_BT_BREDR=y
CONFIG_BT_RFCOMM=y
CONFIG_BT_BNEP=y
CONFIG_BT_HIDP=y
CONFIG_BT_LE=y
CONFIG_BT_HCIVHCI=y
CONFIG_CRYPTO_CMAC=y
CONFIG_CRYPTO_USER_API=y
CONFIG_CRYPTO_USER_API_HASH=y
CONFIG_CRYPTO_USER_API_SKCIPHER=y
CONFIG_UNIX=y
CONFIG_UHID=y
These options should be installed as .config in the kernel source directory followed by this command.
make olddefconfig
After that a default kernel with the required options can be built. More option (like the Bluetooth subsystem) can be enabled on top of this.
Lock debuging
To catch locking related issues the following set of kernel config options may be useful:
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_PROVE_LOCKING=y
CONFIG_LOCKDEP=y
CONFIG_DEBUG_MUTEXES=y