← Back to team overview

kernel-packages team mailing list archive

[Bug 1346687] [NEW] Ubuntu 14 KVM Guest I/O Elevator Non-configurable

 

You have been subscribed to a public bug:

Ubuntu 14.04 guest runs pretty much standard standard configuration: KVM
hypervisor, ACPI and APIC enabled, virtio disk bus, raw storage
format...

While running this project, I am also involved in testing SSD drives
across different Linux distributions and their support for discard
option (TRIM).

To cut the story short, Ubuntu-based KVM guest did not set any scheduler
on the boot disk vda):

# lsblk -io KNAME,TYPE,SCHED,ROTA,DISC-GRAN,DISC-MAX
KNAME TYPE SCHED ROTA DISC-GRAN DISC-MAX
sr0 rom deadline 1 0B 0B
vda disk 1 0B 0B
vda1 part 1 0B 0B
vda2 part 1 0B 0B
vda5 part 1 0B 0B
dm-0 lvm 1 0B 0B
dm-1 lvm 1 0B 0B

That is in stark contrast with other distributions running almost
identical KVM guest configuration (with the exception of the root file
system using BTRFS instead of EXT4 on SUSE).

Oracle Linux 6.5:

# lsblk -io KNAME,TYPE,SCHED,ROTA,DISC-GRAN,DISC-MAX
KNAME TYPE SCHED ROTA DISC-GRAN DISC-MAX
sr0 rom deadline 1 0B 0B
vda disk deadline 1 0B 0B
vda1 part deadline 1 0B 0B
vda2 part deadline 1 0B 0B
dm-0 lvm 1 0B 0B
dm-1 lvm 1 0B 0B

OpenSUSE 13.1:

# lsblk -io KNAME,TYPE,SCHED,ROTA,DISC-GRAN,DISC-MAX
KNAME TYPE SCHED ROTA DISC-GRAN DISC-MAX
sr0 rom cfq 1 0B 0B
vda disk cfq 1 0B 0B
vda1 part cfq 1 0B 0B
vda2 part cfq 1 0B 0B
dm-0 lvm 1 0B 0B
dm-1 lvm 1 0B 0B

Indeed, checking elevator capabilities for boot disk on Ubuntu KVM guest
showed:

# cat /sys/block/vda/queue/scheduler
none

Other Linux distributions show more options:

# cat /sys/block/vda/queue/scheduler
noop deadline [cfq]

As well, attempts to change the elevator on Ubuntu guest fail. For
example:

# echo noop > /sys/block/vda/queue/scheduler

# echo $?
0

# cat /sys/block/vda/queue/scheduler
none

Setting it globally in /etc/default/grub and updating it via update-
grub2 fails too.

In the meantime, to automate check of elevators (schedulers) and discard
support for SSD drives and thin-provisioned volumes on Linux, I wrote
simple Perl script:

http://www.circlingcycle.com.au/Unix-sources/Linux-check-IO-scheduler-
and-discard-support.pl.txt

Part of the results on RHEL 6.5 server would look like:

INFO: I/O elevator (scheduler) and discard support summary
INFO: Hard Disk sdb configured with I/O scheduler "cfq"
INFO: SSD sda configured with I/O scheduler "deadline" supports discard operation
INFO: Hard Disk sdc configured with I/O scheduler "cfq"
INFO: Hard Disk sdi configured with I/O scheduler "cfq"
INFO: Hard Disk sdh configured with I/O scheduler "cfq"

The Ubuntu KVM guest runs latest paches:

Linux ubuntu14-vm2.circlingcycle.com.au 3.13.0-24-generic
#47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Regards,

Dusan Baljevic VK2COT

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: Invalid


** Tags: bot-comment trusty
-- 
Ubuntu 14 KVM Guest I/O Elevator Non-configurable
https://bugs.launchpad.net/bugs/1346687
You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu.