Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
This is a candidate for the Brahmaputra branch.
Change-Id: Idbe41ac77f1aae902cd00af4bc9a0e3532f4284a
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
The document to share the fast live migration environment setup and test
method.
Change-Id: Icd616f58e2ea39d101fcebc1d760178151d8629f
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
Signed-off-by: Liang Li <liang.z.li@intel.com>
Signed-off-by: Raghuveer Reddy <raghuveer.reddy@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
Adding documentation to kvm4nfv project based on
https://wiki.opnfv.org/documentation/tools and the contents mostly comes
from https://wiki.opnfv.org/nfv-kvm,
https://wiki.opnfv.org/nfv-kvm-tuning and
https://wiki.opnfv.org/nfv-kvm-test.
Change-Id: If321221724ec9b76db065af7cdab97ce981be740
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
The patch to run cyclictest on baremetal
(https://gerrit.opnfv.org/gerrit/#/c/3633/) has been merged, thus we
don't need apply the patch anymore. Remove it.
Change-Id: I7058f9d6c3e873b56be52a0e886fe460506a9911
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
* changes:
Cyclictest invokation script
Add the yardstick invokation script
|
|
|
|
* changes:
A script to launch real time guest
Script to create the guest image
Script to create the rt-tests rpm
|
|
|
|
The configuration of the kernel enables the framebuffer console without
any framebuffer selected other than i915. Adding the VESA compliant
framebuffer should fix this issue.
Change-Id: Icc384e05774e1de20985aeb19dfef25ae2431bb6
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
|
|
We run the cyclictest through yardstick, which will help to setup the
environment.
Environment setup scripts are copied to the yardstick docker images. A
yardstick cyclictest yaml file are also used.
Change-Id: Iacf1299a38c3c81a08fd5fdbbf64c5a57f30c38b
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
Launch real time guest need special options like lock memory etc. A
script is used to achieved this. We invoke the qemu utility directly
instead of going through middle layer like libvirt, to get better
controll.
Change-Id: Ia6ad7313463e2f858516bddd4a4b58e95d8c943e
Signed-off-by: David Su <david.w.su@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
This script does the real yardstick works. It downloads the yardstick code,
and run the cyclictest test case.
This scripts is copied by the cyclictest.sh to the container image and
is executed from the yardstick container.
It's based on a script from QiLiang when discussing the integration with
yardstick.
Change-Id: I5920a21401a3e442d5f4fada05d9e789f2a99add
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
Signed-off-by: QiLiang <liangqi1@huawei.com>
|
|
This script download the latest CentOS cloud image and modify it to meet
the test requirement, including remove cloud related script, setup
the ssh keys etc.
It derives from yardstick project, which currently only provide support
to Ubuntu image. If they support CentOS image, we can possibly switch to
them.
Change-Id: I9482936615a28da696ff8f51248a62b13e5677f4
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
|
|
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>
|
|
There is no rt-tests rpm on centos repo, also we need some special
compile flag to enable the -a parameter. So we try to make the rpm
ourselves. The version is specified as 0.96.
But please notice that the Makefile in the rt-tests tree requires some
key, we have to disable that requirement. So this rpm is only for OPNFV
testing purpose.
Change-Id: Ifdd52649bc14405dbe5ad375dc7fd32087139b18
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: I4c0fe67609fc74fc60e6a2c99d448fd47a6d2a86
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>
|
|
|