On Thu, Jan 10, 2019 at 06:37:12PM +0900, Shin'ichiro Kawasaki wrote: > set_scheduler() function defined in common/multipath-over-rdma is useful > to set up a specific IO scheduler not only for multipath tests but also > for zoned block device tests. Move this function to common/rc to allow > its use in test groups other than multipath. The preferred way to set the scheduler is: _test_dev_queue_set scheduler "$scheduler" This function is in the multipath tests because it was a preexisting test suite which was merged into blktests. > Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx> > --- > common/multipath-over-rdma | 24 ------------------------ > common/rc | 24 ++++++++++++++++++++++++ > 2 files changed, 24 insertions(+), 24 deletions(-) > > diff --git a/common/multipath-over-rdma b/common/multipath-over-rdma > index 308c9b5..6bea8e4 100644 > --- a/common/multipath-over-rdma > +++ b/common/multipath-over-rdma > @@ -275,30 +275,6 @@ mount_configfs() { > fi > } > > -# Set scheduler of block device $1 to $2. > -set_scheduler() { > - local b=$1 p s=$2 > - > - p=/sys/class/block/$b/queue/scheduler > - if [ -e "/sys/block/$b/mq" ]; then > - case "$s" in > - noop) s=none;; > - deadline) s=mq-deadline;; > - bfq) s=bfq;; > - esac > - else > - case "$s" in > - none) s=noop;; > - mq-deadline) s=deadline;; > - bfq-mq) s=bfq;; > - esac > - fi > - if ! echo "$s" > "$p"; then > - echo "Changing scheduler of $b from $(<"$p") into $s failed" > - return 1 > - fi > -} > - > # Get a /dev/... path that points at dm device number $1. Set its I/O scheduler > # to $2 and its timeout to $3. The shell script that includes this file must > # define a function get_bdev_path() that translates device number $1 into a > diff --git a/common/rc b/common/rc > index e628f96..0b99e84 100644 > --- a/common/rc > +++ b/common/rc > @@ -222,3 +222,27 @@ _test_dev_is_zoned() { > fi > return 0 > } > + > +# Set scheduler of block device $1 to $2. > +set_scheduler() { > + local b=$1 p s=$2 > + > + p=/sys/class/block/$b/queue/scheduler > + if [ -e "/sys/block/$b/mq" ]; then > + case "$s" in > + noop) s=none;; > + deadline) s=mq-deadline;; > + bfq) s=bfq;; > + esac > + else > + case "$s" in > + none) s=noop;; > + mq-deadline) s=deadline;; > + bfq-mq) s=bfq;; > + esac > + fi > + if ! echo "$s" > "$p"; then > + echo "Changing scheduler of $b from $(<"$p") into $s failed" > + return 1 > + fi > +} > -- > 2.20.1 >