ring-buffer-benchmark: Add parameters to set produce/consumer priorities
authorSteven Rostedt <srostedt@redhat.com>
Wed, 25 Nov 2009 18:22:21 +0000 (13:22 -0500)
committerSteven Rostedt <rostedt@goodmis.org>
Wed, 25 Nov 2009 19:14:15 +0000 (14:14 -0500)
commit7ac074340480018681a0d72b324d4487543bdc0e
treec61f98cd477568d162d5fe408383f257f187508c
parent457dc928f586f3f4b930206965e6db270034e97e
ring-buffer-benchmark: Add parameters to set produce/consumer priorities

Running the ring-buffer-benchmark's threads at the lowest priority may
work well for keeping it in the background, but it is not appropriate
for the benchmarks.

This patch adds 4 parameters to the module:

  consumer_fifo
  consumer_nice
  producer_fifo
  producer_nice

By default the consumer and producer still run at nice +19.

If the *_fifo options are set, they will override the *_nice values.

 modprobe ring_buffer_benchmark consumer_nice=0 producer_fifo=10

The above will set the consumer thread to a nice value of 0, and
the producer thread to a RT SCHED_FIFO priority of 10.

Note, this patch also fixes a bug where calling set_user_nice on the
consumer thread would oops the kernel when the parameter "disable_reader"
is set.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
kernel/trace/ring_buffer_benchmark.c