# 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.

instances:
 - upstream-apparmor-kasan:	[linux-next, x86_64, timeouts_native, gcc, bpfjit, lsm, apparmor, kasan, kfence]
 - upstream-selinux-kasan:	[linux-next, x86_64, timeouts_native, gcc, lsm, selinux, slab, kasan, kfence]
 - upstream-smack-kasan:	[linux-next, x86_64, timeouts_native, clang, bpfjit, lsm, smack, kasan, kfence]
 - upstream-kasan-badwrites:	[linux-next, x86_64, timeouts_native, gcc, bpfjit, lsm, apparmor, kasan, kasan_panic_on_write, kfence]
 - upstream-kmsan:		[x86_64, timeouts_native, clang, lsm, apparmor, nonoise, kmsan]
 - upstream-kcsan:		[upstream, timeouts_native, x86_64, clang, onlynet, nonoise, kcsan]
 - upstream-leak:		[upstream, timeouts_native, x86_64, gcc, bpfjit, lsm, apparmor, nonoise, kmemleak]
 - upstream-usb:		[upstream, timeouts_native, x86_64, gcc, lsm, apparmor, onlyusb, kasan]
 - upstream-arm64-kasan:	[upstream, arm64, arm64_emu, timeouts_emu, clang, lsm, selinux, reduced, kasan, nokcov]
 - upstream-arm64-mte:		[upstream, arm64, arm64_emu, timeouts_emu, clang, bpfjit, lsm, smack, nonoise, reduced, kfence, mte, nokcov]
 # The full configs are used with syz-check to avoid no-such-struct warnings.
 - upstream-arm64-full:		[upstream, arm64, timeouts_native, clang, bpfjit, lsm, smack, kasan, kfence]
 # TODO: enable kasan when it works, currently Go binaries hang on KASAN kernel:
 # https://lore.kernel.org/linux-arm-kernel/CACT4Y+YdJoNTqnBSELcEbcbVsKBtJfYUc7_GSXbUQfAJN3JyRg@mail.gmail.com/
 - upstream-arm-kasan:		[upstream, arm, timeouts_emu, gcc, bpfjit, lsm, selinux, reduced]
 - upstream-arm-full:		[upstream, arm, timeouts_emu, gcc, bpfjit, lsm, selinux]
 - upstream-riscv64-kasan:	[upstream, riscv, timeouts_emu, gcc, bpfjit, lsm, apparmor, reduced, kasan, kfence]
 - upstream-s390-kasan:		[upstream, s390, gcc, bpfjit, lsm, selinux, nonoise, reduced, kasan, kfence, nokcov]
 - stable-5.4-kasan:		[stable-5.4, x86_64, timeouts_native, gcc, bpfjit, lsm, apparmor, kasan]
 - stable-5.10-kasan:		[stable-5.10, x86_64, timeouts_native, clang, bpfjit, lsm, apparmor, kasan]
 - stable-5.10-arm64-kasan:	[stable-5.10, arm64, timeouts_native, clang, bpfjit, lsm, apparmor, kasan]
 - stable-5.15-kasan:		[stable-5.15, x86_64, timeouts_native, clang, bpfjit, lsm, apparmor, kasan]
 - stable-5.15-arm64-kasan:	[stable-5.15, arm64, timeouts_native, clang, bpfjit, lsm, apparmor, kasan]
 - stable-6.1-kasan:		[stable-6.1, x86_64, timeouts_native, clang, bpfjit, lsm, apparmor, kasan, kfence]
 - stable-6.1-arm64-kasan:	[stable-6.1, arm64, timeouts_native, clang, bpfjit, lsm, apparmor, kasan, kfence]
 - android-5.4:			[android, android-5.4, nodefconfig, x86_64, timeouts_native, clang, onlyusb, nonoise, kasan]
 - android-5.10:		[android, android-5.10, nodefconfig, x86_64, timeouts_native, clang, onlyusb, nonoise, kasan]
 - android-5.10-cuttlefish:     [android, android-5.10, nodefconfig, x86_64, modules, cuttlefish, timeouts_native, clang, baseline, nonoise, kasan]
 - android-5.15:		[android, android-5.15, nodefconfig, x86_64, timeouts_native, clang, onlyusb, nonoise, kasan]
 - android-5.15-cuttlefish:     [android, android-5.15, nodefconfig, x86_64, modules, cuttlefish, timeouts_native, clang, baseline, nonoise, kasan]
 - android14-5.15-cuttlefish:     [android, android14-5.15, nodefconfig, x86_64, modules, cuttlefish, timeouts_native, clang, baseline, nonoise, kasan]
 - android-6.1:			[android, android-6.1, nodefconfig, x86_64, timeouts_native, clang, onlyusb, nonoise, kasan]
 - chromeos-5.4:		[chromeos, chromeos-5.4, nodefconfig, x86_64, timeouts_native, onlyusb, kasan]
 - chromeos-5.10:		[chromeos, chromeos-5.10, nodefconfig, x86_64, timeouts_native, onlyusb, kasan]
 - chromeos-5.15:		[chromeos, chromeos-5.15, nodefconfig, x86_64, timeouts_native, onlyusb, kasan]
 - chromeos-6.1:		[chromeos, chromeos-6.1, nodefconfig, x86_64, timeouts_native, onlyusb, kasan]
 - cos-5.15-kasan:		[cos, cos-5.15, x86_64, clang, nodefconfig, baseline, timeouts_native, nonoise, kasan]
 - cos-5.15-arm64-kasan:	[cos, cos-5.15, arm64, clang, nodefconfig, baseline, timeouts_native, nonoise, kasan]
 - cos-6.1-kasan:		[cos, cos-6.1, x86_64, clang, nodefconfig, baseline, timeouts_native, nonoise, kasan]
 - cos-6.1-arm64-kasan:		[cos, cos-6.1, arm64, clang, nodefconfig, baseline, timeouts_native, nonoise, kasan]

# Note: fragments are included top to bottom from this list. When a config fragments overrides
# another, the override has to be loaded second. These files are included from the bits/ dir.
includes:
 - base.yml: []
 - x86_64.yml: [x86_64]
 - arm64.yml: [arm64]
 - arm64_emu.yml: [arm64_emu]
 - arm.yml: [arm]
 - timeouts_emu.yml: [timeouts_emu]
 - timeouts_native.yml: [timeouts_native]
 - riscv64.yml: [riscv]
 - s390.yml: [s390]
 - subsystems.yml: [-baseline, -onlynet, -onlyusb]
 - net.yml: [-baseline, -onlyusb]
 - net-extra.yml: [-baseline, -onlyusb, -reduced]
 - crypto.yml: [-baseline, -onlynet, -onlyusb]
 - bpf.yml: [-baseline, -onlynet, -onlyusb]
 - partitions.yml: [-baseline, -onlynet, -onlyusb, -reduced]
 - filesystems.yml: [-baseline, -onlynet, -onlyusb, -reduced]
 - media.yml: [-baseline, -onlynet, -onlyusb, -reduced]
 - bluetooth.yml: [-baseline, -onlynet, -onlyusb, -reduced, -s390]
 - wireless.yml: [-baseline, -onlynet, -onlyusb, -reduced, -s390]
 - hamradio.yml: [-baseline, -onlynet, -onlyusb, -reduced, -s390]
 - usb.yml: [onlyusb]
 - lsm.yml: [lsm]
 - apparmor.yml: [apparmor]
 - selinux.yml: [selinux]
 - smack.yml: [smack]
 - slab.yml: [slab]
 - debug.yml: [-nonoise]
 # lockdep is broken on arm: https://lore.kernel.org/all/0000000000004f14c105bde08f75@google.com/
 - lockdep.yml: [-nonoise, -arm]
 - kmemleak.yml: [kmemleak]
 - kasan.yml: [kasan]
 - kasan_panic_on_write.yml: [kasan_panic_on_write]
 - mte.yml: [mte]
 - kcsan.yml: [kcsan]
 - kmsan.yml: [kmsan]
 - kfence.yml: [kfence]
 - baseline.yml: [base-config]
 - linux-upstream.yml: [upstream]
 - linux-next.yml: [linux-next]
 - stable-5.4.yml: [stable-5.4]
 - stable-5.10.yml: [stable-5.10]
 - stable-5.15.yml: [stable-5.15]
 - stable-6.1.yml: [stable-6.1]
 - android.yml: [android]
 - android-subsystems.yml: [android, -baseline]
 - android-5.4.yml: [android-5.4]
 - android-5.10.yml: [android-5.10]
 - android-5.15.yml: [android-5.15]
 - android14-5.15.yml: [android14-5.15]
 - android-6.1.yml: [android-6.1]
 - chromeos.yml: [chromeos]
 - chromeos-subsystems.yml: [chromeos, -baseline]
 - chromeos-5.4.yml: [chromeos-5.4]
 - chromeos-5.10.yml: [chromeos-5.10]
 - chromeos-5.15.yml: [chromeos-5.15]
 - chromeos-6.1.yml: [chromeos-6.1]
 - cos-5.15.yml: [cos-5.15]
 - cos-6.1.yml: [cos-6.1]
