locktorture: Rename readers_bind/writers_bind to bind_readers/bind_writers

This commit renames the readers_bind and writers_bind module parameters
to bind_readers and bind_writers, respectively.  This provides added
clarity via the imperative mode and better organizes the documentation.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
This commit is contained in:
Paul E. McKenney 2023-08-22 08:48:16 -07:00 committed by Frederic Weisbecker
parent b1326d766b
commit 2273799c29
2 changed files with 22 additions and 22 deletions

View file

@ -2918,6 +2918,14 @@
acquisition. Acquisitions exceeding this limit
will result in a splat once they do complete.
locktorture.bind_readers= [KNL]
Specify the list of CPUs to which the readers are
to be bound.
locktorture.bind_writers= [KNL]
Specify the list of CPUs to which the writers are
to be bound.
locktorture.call_rcu_chains= [KNL]
Specify the number of self-propagating call_rcu()
chains to set up. These are used to ensure that
@ -2952,10 +2960,6 @@
Set time (s) between CPU-hotplug operations, or
zero to disable CPU-hotplug testing.
locktorture.readers_bind= [KNL]
Specify the list of CPUs to which the readers are
to be bound.
locktorture.rt_boost= [KNL]
Do periodic testing of real-time lock priority
boosting. Select 0 to disable, 1 to boost
@ -3000,10 +3004,6 @@
locktorture.verbose= [KNL]
Enable additional printk() statements.
locktorture.writers_bind= [KNL]
Specify the list of CPUs to which the writers are
to be bound.
locktorture.writer_fifo= [KNL]
Run the write-side locktorture kthreads at
sched_set_fifo() real-time priority.

View file

@ -58,8 +58,8 @@ module_param(torture_type, charp, 0444);
MODULE_PARM_DESC(torture_type,
"Type of lock to torture (spin_lock, spin_lock_irq, mutex_lock, ...)");
static cpumask_var_t readers_bind; // Bind the readers to the specified set of CPUs.
static cpumask_var_t writers_bind; // Bind the writers to the specified set of CPUs.
static cpumask_var_t bind_readers; // Bind the readers to the specified set of CPUs.
static cpumask_var_t bind_writers; // Bind the writers to the specified set of CPUs.
// Parse a cpumask kernel parameter. If there are more users later on,
// this might need to got to a more central location.
@ -102,8 +102,8 @@ static const struct kernel_param_ops lt_bind_ops = {
.get = param_get_cpumask,
};
module_param_cb(readers_bind, &lt_bind_ops, &readers_bind, 0644);
module_param_cb(writers_bind, &lt_bind_ops, &writers_bind, 0644);
module_param_cb(bind_readers, &lt_bind_ops, &bind_readers, 0644);
module_param_cb(bind_writers, &lt_bind_ops, &bind_writers, 0644);
long torture_sched_setaffinity(pid_t pid, const struct cpumask *in_mask);
@ -1039,18 +1039,18 @@ lock_torture_print_module_parms(struct lock_torture_ops *cur_ops,
const char *tag)
{
static cpumask_t cpumask_all;
cpumask_t *rcmp = cpumask_nonempty(readers_bind) ? readers_bind : &cpumask_all;
cpumask_t *wcmp = cpumask_nonempty(writers_bind) ? writers_bind : &cpumask_all;
cpumask_t *rcmp = cpumask_nonempty(bind_readers) ? bind_readers : &cpumask_all;
cpumask_t *wcmp = cpumask_nonempty(bind_writers) ? bind_writers : &cpumask_all;
cpumask_setall(&cpumask_all);
pr_alert("%s" TORTURE_FLAG
"--- %s%s: acq_writer_lim=%d call_rcu_chains=%d long_hold=%d nested_locks=%d nreaders_stress=%d nwriters_stress=%d onoff_holdoff=%d onoff_interval=%d rt_boost=%d rt_boost_factor=%d shuffle_interval=%d shutdown_secs=%d stat_interval=%d stutter=%d verbose=%d writer_fifo=%d readers_bind=%*pbl writers_bind=%*pbl\n",
"--- %s%s: acq_writer_lim=%d bind_readers=%*pbl bind_writers=%*pbl call_rcu_chains=%d long_hold=%d nested_locks=%d nreaders_stress=%d nwriters_stress=%d onoff_holdoff=%d onoff_interval=%d rt_boost=%d rt_boost_factor=%d shuffle_interval=%d shutdown_secs=%d stat_interval=%d stutter=%d verbose=%d writer_fifo=%d\n",
torture_type, tag, cxt.debug_lock ? " [debug]": "",
acq_writer_lim, call_rcu_chains, long_hold, nested_locks, cxt.nrealreaders_stress,
acq_writer_lim, cpumask_pr_args(rcmp), cpumask_pr_args(wcmp),
call_rcu_chains, long_hold, nested_locks, cxt.nrealreaders_stress,
cxt.nrealwriters_stress, onoff_holdoff, onoff_interval, rt_boost,
rt_boost_factor, shuffle_interval, shutdown_secs, stat_interval, stutter,
verbose, writer_fifo,
cpumask_pr_args(rcmp), cpumask_pr_args(wcmp));
verbose, writer_fifo);
}
// If requested, maintain call_rcu() chains to keep a grace period always
@ -1356,8 +1356,8 @@ static int __init lock_torture_init(void)
writer_fifo ? sched_set_fifo : NULL);
if (torture_init_error(firsterr))
goto unwind;
if (cpumask_nonempty(writers_bind))
torture_sched_setaffinity(writer_tasks[i]->pid, writers_bind);
if (cpumask_nonempty(bind_writers))
torture_sched_setaffinity(writer_tasks[i]->pid, bind_writers);
create_reader:
if (cxt.cur_ops->readlock == NULL || (j >= cxt.nrealreaders_stress))
@ -1367,8 +1367,8 @@ static int __init lock_torture_init(void)
reader_tasks[j]);
if (torture_init_error(firsterr))
goto unwind;
if (cpumask_nonempty(readers_bind))
torture_sched_setaffinity(reader_tasks[j]->pid, readers_bind);
if (cpumask_nonempty(bind_readers))
torture_sched_setaffinity(reader_tasks[j]->pid, bind_readers);
}
if (stat_interval > 0) {
firsterr = torture_create_kthread(lock_torture_stats, NULL,