1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0+ 3# 4# Kernel-version-dependent shell functions for the rest of the scripts. 5# 6# Copyright (C) IBM Corporation, 2013 7# 8# Authors: Paul E. McKenney <paulmck@linux.ibm.com> 9 10# rcutorture_param_n_barrier_cbs bootparam-string 11# 12# Adds n_barrier_cbs rcutorture module parameter if not already specified. 13rcutorture_param_n_barrier_cbs () { 14 if echo $1 | grep -q "rcutorture\.n_barrier_cbs" 15 then 16 : 17 else 18 echo rcutorture.n_barrier_cbs=4 19 fi 20} 21 22# rcutorture_param_onoff bootparam-string config-file 23# 24# Adds onoff rcutorture module parameters to kernels having it. 25rcutorture_param_onoff () { 26 if ! bootparam_hotplug_cpu "$1" && configfrag_hotplug_cpu "$2" 27 then 28 echo CPU-hotplug kernel, adding rcutorture onoff. 1>&2 29 echo rcutorture.onoff_interval=1000 rcutorture.onoff_holdoff=30 30 fi 31} 32 33# rcutorture_param_stat_interval bootparam-string 34# 35# Adds stat_interval rcutorture module parameter if not already specified. 36rcutorture_param_stat_interval () { 37 if echo $1 | grep -q "rcutorture\.stat_interval" 38 then 39 : 40 else 41 echo rcutorture.stat_interval=15 42 fi 43} 44 45# per_version_boot_params bootparam-string config-file seconds 46# 47# Adds per-version torture-module parameters to kernels supporting them. 48per_version_boot_params () { 49 echo $1 `rcutorture_param_onoff "$1" "$2"` \ 50 `rcutorture_param_n_barrier_cbs "$1"` \ 51 `rcutorture_param_stat_interval "$1"` \ 52 rcutorture.shutdown_secs=$3 \ 53 rcutorture.test_no_idle_hz=1 \ 54 rcutorture.verbose=1 55} 56