kvm: exclude ioeventfd from counting kvm_io_range limit
authorAmos Kong <akong@redhat.com>
Fri, 24 May 2013 22:44:15 +0000 (06:44 +0800)
committerGleb Natapov <gleb@redhat.com>
Tue, 4 Jun 2013 08:49:38 +0000 (11:49 +0300)
commit6ea34c9b78c10289846db0abeebd6b84d5aca084
tree23b7139d16f9bf7c0a5ccd306c39d1b66570b61c
parent566af9404bf57267ea4fc29ca6b4628a17ee3ea7
kvm: exclude ioeventfd from counting kvm_io_range limit

We can easily reach the 1000 limit by start VM with a couple
hundred I/O devices (multifunction=on). The hardcode limit
already been adjusted 3 times (6 ~ 200 ~ 300 ~ 1000).

In userspace, we already have maximum file descriptor to
limit ioeventfd count. But kvm_io_bus devices also are used
for pit, pic, ioapic, coalesced_mmio. They couldn't be limited
by maximum file descriptor.

Currently only ioeventfds take too much kvm_io_bus devices,
so just exclude it from counting kvm_io_range limit.

Also fixed one indent issue in kvm_host.h

Signed-off-by: Amos Kong <akong@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Gleb Natapov <gleb@redhat.com>
include/linux/kvm_host.h
virt/kvm/eventfd.c
virt/kvm/kvm_main.c