| 
									
										
										
										
											2012-05-22 00:08:30 -04:00
										 |  |  | # This file holds defaults for most the tests. It defines the options that | 
					
						
							|  |  |  | # are most common to tests that are likely to be shared. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Note, after including this file, a config file may override any option | 
					
						
							|  |  |  | # with a DEFAULTS OVERRIDE section. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For those cases that use the same machine to boot a 64 bit | 
					
						
							|  |  |  | # and a 32 bit version. The MACHINE is the DNS name to get to the | 
					
						
							|  |  |  | # box (usually different if it was 64 bit or 32 bit) but the | 
					
						
							|  |  |  | # BOX here is defined as a variable that will be the name of the box | 
					
						
							|  |  |  | # itself. It is useful for calling scripts that will power cycle | 
					
						
							|  |  |  | # the box, as only one script needs to be created to power cycle | 
					
						
							|  |  |  | # even though the box itself has multiple operating systems on it. | 
					
						
							|  |  |  | # By default, BOX and MACHINE are the same. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS IF NOT DEFINED BOX | 
					
						
							|  |  |  | BOX := ${MACHINE} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Consider each box as 64 bit box, unless the config including this file | 
					
						
							|  |  |  | # has defined BITS = 32 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS IF NOT DEFINED BITS | 
					
						
							|  |  |  | BITS := 64 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # THIS_DIR is used through out the configs and defaults to ${PWD} which | 
					
						
							|  |  |  | # is the directory that ktest.pl was called from. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | THIS_DIR := ${PWD} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-18 00:56:18 +09:00
										 |  |  | # to organize your configs, having each machine save their configs | 
					
						
							| 
									
										
										
										
											2012-05-22 00:08:30 -04:00
										 |  |  | # into a separate directly is useful. | 
					
						
							|  |  |  | CONFIG_DIR := ${THIS_DIR}/configs/${MACHINE} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Reset the log before running each test. | 
					
						
							|  |  |  | CLEAR_LOG = 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # As installing kernels usually requires root privilege, default the | 
					
						
							|  |  |  | # user on the target as root. It is also required that the target | 
					
						
							|  |  |  | # allows ssh to root from the host without asking for a password. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SSH_USER = root | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For accesing the machine, we will ssh to root@machine. | 
					
						
							|  |  |  | SSH := ssh ${SSH_USER}@${MACHINE} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Update this. The default here is ktest will ssh to the target box | 
					
						
							|  |  |  | # and run a script called 'run-test' located on that box. | 
					
						
							|  |  |  | TEST = ${SSH} run-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Point build dir to the git repo you use | 
					
						
							|  |  |  | BUILD_DIR = ${THIS_DIR}/linux.git | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Each machine will have its own output build directory. | 
					
						
							|  |  |  | OUTPUT_DIR = ${THIS_DIR}/build/${MACHINE} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Yes this config is focused on x86 (but ktest works for other archs too) | 
					
						
							|  |  |  | BUILD_TARGET = arch/x86/boot/bzImage | 
					
						
							|  |  |  | TARGET_IMAGE = /boot/vmlinuz-test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # have directory for the scripts to reboot and power cycle the boxes | 
					
						
							|  |  |  | SCRIPTS_DIR := ${THIS_DIR}/scripts | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # You can have each box/machine have a script to power cycle it. | 
					
						
							|  |  |  | # Name your script <box>-cycle. | 
					
						
							|  |  |  | POWER_CYCLE = ${SCRIPTS_DIR}/${BOX}-cycle | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # This script is used to power off the box. | 
					
						
							|  |  |  | POWER_OFF = ${SCRIPTS_DIR}/${BOX}-poweroff | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Keep your test kernels separate from your other kernels. | 
					
						
							|  |  |  | LOCALVERSION = -test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The /boot/grub/menu.lst is searched for the line: | 
					
						
							|  |  |  | #  title Test Kernel | 
					
						
							|  |  |  | # and ktest will use that kernel to reboot into. | 
					
						
							|  |  |  | # For grub2 or other boot loaders, you need to set BOOT_TYPE | 
					
						
							|  |  |  | # to 'script' and define other ways to load the kernel. | 
					
						
							|  |  |  | # See snowball.conf example. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | GRUB_MENU = Test Kernel | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The kernel build will use this option. | 
					
						
							|  |  |  | BUILD_OPTIONS = -j8 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Keeping the log file with the output dir is convenient. | 
					
						
							|  |  |  | LOG_FILE = ${OUTPUT_DIR}/${MACHINE}.log | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Each box should have their own minum configuration | 
					
						
							|  |  |  | # See min-config.conf | 
					
						
							|  |  |  | MIN_CONFIG = ${CONFIG_DIR}/config-min | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For things like randconfigs, there may be configs you find that | 
					
						
							|  |  |  | # are already broken, or there may be some configs that you always | 
					
						
							|  |  |  | # want set. Uncomment ADD_CONFIG and point it to the make config files | 
					
						
							|  |  |  | # that set the configs you want to keep on (or off) in your build. | 
					
						
							|  |  |  | # ADD_CONFIG is usually something to add configs to all machines, | 
					
						
							|  |  |  | # where as, MIN_CONFIG is specific per machine. | 
					
						
							|  |  |  | #ADD_CONFIG = ${THIS_DIR}/config-broken ${THIS_DIR}/config-general | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # To speed up reboots for bisects and patchcheck, instead of | 
					
						
							|  |  |  | # waiting 60 seconds for the console to be idle, if this line is | 
					
						
							|  |  |  | # seen in the console output, ktest will know the good kernel has | 
					
						
							|  |  |  | # finished rebooting and it will be able to continue the tests. | 
					
						
							|  |  |  | REBOOT_SUCCESS_LINE = ${MACHINE} login: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The following is different ways to end the test. | 
					
						
							|  |  |  | # by setting the variable REBOOT to: none, error, fail or | 
					
						
							|  |  |  | # something else, ktest will power cycle or reboot the target box | 
					
						
							|  |  |  | # at the end of the tests. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # REBOOT := none | 
					
						
							|  |  |  | #   Don't do anything at the end of the test. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # REBOOT := error | 
					
						
							|  |  |  | #   Reboot the box if ktest detects an error | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # REBOOT := fail | 
					
						
							|  |  |  | #   Do not stop on failure, and after all tests are complete | 
					
						
							|  |  |  | #   power off the box (for both success and error) | 
					
						
							|  |  |  | #   This is good to run over a weekend and you don't want to waste | 
					
						
							|  |  |  | #   electricity. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS IF ${REBOOT} == none | 
					
						
							|  |  |  | REBOOT_ON_SUCCESS = 0 | 
					
						
							|  |  |  | REBOOT_ON_ERROR = 0 | 
					
						
							|  |  |  | POWEROFF_ON_ERROR = 0 | 
					
						
							|  |  |  | POWEROFF_ON_SUCCESS = 0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS ELSE IF ${REBOOT} == error | 
					
						
							|  |  |  | REBOOT_ON_SUCCESS = 0 | 
					
						
							|  |  |  | REBOOT_ON_ERROR = 1 | 
					
						
							|  |  |  | POWEROFF_ON_ERROR = 0 | 
					
						
							|  |  |  | POWEROFF_ON_SUCCESS = 0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS ELSE IF ${REBOOT} == fail | 
					
						
							|  |  |  | REBOOT_ON_SUCCESS = 0 | 
					
						
							|  |  |  | POWEROFF_ON_ERROR = 1 | 
					
						
							|  |  |  | POWEROFF_ON_SUCCESS = 1 | 
					
						
							|  |  |  | POWEROFF_AFTER_HALT = 120 | 
					
						
							|  |  |  | DIE_ON_FAILURE = 0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Store the failure information into this directory | 
					
						
							|  |  |  | # such as the .config, dmesg, and build log. | 
					
						
							|  |  |  | STORE_FAILURES = ${THIS_DIR}/failures | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEFAULTS ELSE | 
					
						
							|  |  |  | REBOOT_ON_SUCCESS = 1 | 
					
						
							|  |  |  | REBOOT_ON_ERROR = 1 | 
					
						
							|  |  |  | POWEROFF_ON_ERROR = 0 | 
					
						
							|  |  |  | POWEROFF_ON_SUCCESS = 0 |