# Copyright 2020 syzkaller project authors. All rights reserved. # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. shell: - make vexpress_defconfig - make kvm_guest.config config: - CMDLINE: [append, "root=/dev/vda console=ttyAMA0 vmalloc=512M"] - CMDLINE_EXTEND # If we enable KASAN, we may want the following configs as well. # KASAN_INLINE leads to a too large kernel image which is mishandled by qemu or kernel and does not boot: # https://lore.kernel.org/linux-arm-kernel/20210119130010.GA2338@C02TD0UTHF1T.local/T/#m78fdfcc41ae831f91c93ad5dabe63f7ccfb482f0 # - KASAN_OUTLINE # - CC_OPTIMIZE_FOR_SIZE # ARM_LPAE=y/n are two major and very different MMUs used on ARM32 systems. # Currently we only test ARM_LPAE=y, but if we have another instance, it would be useful to use ARM_LPAE=n. - ARM_LPAE # The other one (UNWINDER_ARM) leads to unparsable oopses (no indication of stack start). - UNWINDER_FRAME_POINTER # Print PCs in stack traces otherwise we fail to parse oopses. - BACKTRACE_VERBOSE # Presumably this gives more interesting coverage. - HIGHMEM - HIGHPTE - DEBUG_HIGHMEM - BOUNCE - BIG_LITTLE - BL_SWITCHER - ARM_BIG_LITTLE_CPUIDLE - VFP - NEON - KERNEL_MODE_NEON - VMSPLIT_2G - WQ_POWER_EFFICIENT_DEFAULT - ENERGY_MODEL: [-baseline, -onlyusb] - PARAVIRT_TIME_ACCOUNTING - ARM_VEXPRESS_SPC_CPUFREQ: [-baseline, -onlyusb] - BINFMT_ELF_FDPIC - BINFMT_FLAT - BINFMT_FLAT_OLD - BINFMT_ZFLAT - BINFMT_SHARED_FLAT: [-v6.1] - CAN_KVASER_PCIEFD: [-baseline, -onlyusb] # This can be only selected by other options. - CRC_T10DIF: [-v6.15] # Otherwise fuzzing on arm32 is currently hindered due to the "BUG: using smp_processor_id() in preemptible code" bug. # See https://github.com/google/syzkaller/issues/3249 - HARDEN_BRANCH_PREDICTOR: n