Age | Commit message (Collapse) | Author | Files | Lines |
|
To achieve good real time and live migration performance, special setup
is needed on guest environment.
Two scripts are used to setup the guest environment. The guest-setup0.sh
setup the environment that should take effect before the tested kernel is
bringup, including install the kernel rpm, the rt-test package and modify
the grub entries. The guest-setup1.sh setup the environment that takes
effect after the tested kernel is up, like some sysfs entry, interrupt
affinity etc.
Change-Id: Icaed71e250b314723d6b1814c9ac33c10d99c6a0
Signed-off-by: David Su <david.w.su@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
The kernel rpm installation on rehl/centos is using grubby to setup the
default kernel entry, so we should not change the grub default set from
saved to 0.
Change-Id: I5910f498f5889c052e43d2e1e92b209c05b01455
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
|
|
|
|
|
|
Testing KVM4NFV project requires special host environment to get the
best result.
Two scrripts are used to setup the environment. The host-setup0.sh setup
the environment that should take effect before the kernel is bringup,
mostly the grub entries. The host-setup1.sh setup the environment that
takes effect after the kernel is up, like some sysfs entry, interrupt
affinity etc. The host-config provides the configurations.
Change-Id: Ie933ea0089ac82acd39fc48088615215993312f3
Signed-off-by: David Su <david.w.su@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
(Back port from upstream, commit id: 0fd7e098db30e302d27920487f0afec)
The commit 317b0a6d8 fixed an issue which caused by the outdated
env->tsc value, but the fix lead to 'cpu_synchronize_all_states()'
called twice during live migration. The 'cpu_synchronize_all_states()'
takes about 130us for a VM which has 4 vcpus, it's a bit expensive.
Synchronize the whole CPU context just for updating env->tsc is too
wasting, this patch use a new function to update the env->tsc.
Comparing to 'cpu_synchronize_all_states()', it only takes about 20us.
Change-Id: I7dc8371aa17b005d073249c3732d9a7424f20a25
Signed-off-by: Liang Li <liang.z.li@intel.com>
Message-Id: <1446695464-27116-2-git-send-email-liang.z.li@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
This tool is to be used to measure VM preemption latencies
defined by kvmfornfv requirements. See README.txt for
usage of the tool.
Change-Id: I78aed07df0af02f2268e36cfeb81923ba2bdb52a
Signed-off-by: David Su <david.w.su@intel.com>
|
|
Change-Id: Iecc8205f443e2e47fc955c80bf6f0aa55db75447
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
|
|
|
|
|
|
Currently the vfio msi interrupt is kept as IRQ thread, this is not good
for NFV scenerio because in NFV scenerio, we want to inject the interrupt
to the guest asap. A threaded IRQ introduces schedule latency.
However, this change is like a quick and dirty and may bring
potential deadlock, because the spinlock_irqsave() from eventfd_signal()
is preemptible in RT kernel, which should not be held on IRQ context. But
changing it to be raw_spinlock is bad because it will increase the latency
a lot if the eventfd is accessed by user space.
The deadlock should be ok since for vfio MSI handler is purely kernel story
and the lock is a per-eventfd lock and seems no one else is using it for the
vfio msi scenario.
Upstream status: discussion https://lkml.org/lkml/2015/10/26/764
Change-Id: Ie4405a5b568aa75ca8c3481eeeea228a486b9794
|
|
This is a backporting from upstream linux, please refer to
http://marc.info/?t=142904577100001&r=1&w=2 for more information, the
corresponding kernel commit is 0ff53d09642204c64842 (tick: sched: Force
tick interrupt and get rid of softirq magic).
The purpose of this patch is, if a tick_sched interrupt is missed, don't
try to raise softirq, instead, we can simply trigger the timer interrupt.
The reason is, softirq requires context switch and has much higher overhead
than interrupt.
Upstream status: backport 0ff53d09642204c64842
Change-Id: I70131fb85189d15972fcaa1a2a2fa190270787f9
Back-port-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
OVS kernel module is important for NFV. The existed kernel config misses
several important kernel configuration, mostly for VxLAN, which is required
by the OVS kernel module.
Also add the OVS as a module, so that user can use it if needed, or replace
it when use the OPNFV patched OVS module.
Change-Id: I032f84e0468fc2614557274a50f30d502d39cc52
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
|
|
Change-Id: I3e91161abafc62554e793e4851df639c099421e7
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
Change-Id: Icd51e1625a57867b2f79cb2b2d1ab21b23bd80e0
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
qemu_savevm_state_cancel becomes mandatory operation, it should
be done unconditionally.
back port from upstream.
Change-Id: If1a2a6d70f1b2632b72a7f7290a67f442096fdcf
Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Liang Li <liang.z.li@intel.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Liang Li <liang.z.li@intel.com>
|
|
|
|
The script is based on the build script for copper
https://git.opnfv.org/cgit/releng/tree/jjb/copper/docu-build.sh
The script should be run from the root of kvmfornfv source tree
Change-Id: Ic12890990741441e88e35a87ef2570b1c601ca61
Signed-off-by: David Su <david.w.su@intel.com>
|
|
|
|
recently announced rt patch patch-4.1.10-rt10.patch. No further changes needed."
|
|
Kernel config is important for RT linux. A specific config
file is provided for the opnfv project to build the
reference config options.
Currently this config file is assumed to be used for
both host and guest kernel. We may split them in future.
Change-Id: Ia9ebe0bc002518bb603af8901c6f31531d2f0cee
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
|
|
|
|
recently announced rt patch patch-4.1.10-rt10.patch. No further changes
needed.
Change-Id: I9a0cf084498133b10771e744b6da4b29dff706ba
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
taken from the official qemu wiki page. No further changes included.
Change-Id: I690a0aba6a986291252e766c60cf1fbea9a0cd46
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
These changes brings a vanilla kernel from kernel.org, and the patch
applied for rt is patch-4.1.7-rt8.patch. No further changes needed.
Change-Id: Id8dd03c2ddd971e4d1d69b905f3069737053b700
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
Because of the patch 3ea3b7fa9af067982f34b of kvm, now the migration_end()
is a time consuming operation, which takes about dozens of milliseconds, and
will prolong VM downtime. Such an operation should be done after migration
completion.
For a VM with 8G RAM, this patch can reduce the VM downtime about 32 ms during
live migration.
Change-Id: Iddd10bd5a2b1bf52cce36253f303fc458da343cd
Signed-off-by: Liang Li <liang.z.li@intel.com>
|
|
This code will be pushed to each project creating a docs/ directory
This servers as an example and template for you (the developers) to create
your own project documentation
Change-Id: I8aa7b356e320ab83c902604c9bf66f56c16ae643
JIRA:RELENG-15
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
|
|
Change-Id: Ic99cbad4b61f8b127b7dc74d04576c0bcbaaf4f5
Signed-off-by: Yang Zhang <yang.z.zhang@intel.com>
|
|
Import the rt linux 4.1.3-rt3 as OPNFV kvm base.
It's from git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-4.1.y-rt and
the base is:
commit 0917f823c59692d751951bf5ea699a2d1e2f26a2
Author: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Date: Sat Jul 25 12:13:34 2015 +0200
Prepare v4.1.3-rt3
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
We lose all the git history this way and it's not good. We
should apply another opnfv project repo in future.
Change-Id: I87543d81c9df70d99c5001fbdf646b202c19f423
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
|
|
We'll leave the git project as `kvmfornfv' but we'll change the other
nic-names (IRC, JIRA, mailing list) to just `kvm'.
Change-Id: I4b7c84b070348eff228a8829688a184276736c32
|
|
Change-Id: I5f26b9e9386f7777de96d6c481177bcf8825e63b
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
|
|
|