summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-01-05A script to launch real time guestYunhong Jiang1-0/+45
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>
2016-01-05Script to create the guest imageYunhong Jiang2-0/+152
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>
2016-01-05Script to create the rt-tests rpmYunhong Jiang2-0/+56
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>
2016-01-05Add guest environment setup scriptsYunhong Jiang2-0/+89
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>
2016-01-05No change to the grub default settingYunhong Jiang1-1/+0
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>
2016-01-06Merge "Add host environment setup scripts"Jiang, Yunhong3-0/+171
2016-01-05Merge "Add virtual functions support to ixgbe and i40e."Don Dugger1-1/+1
2016-01-05Merge "Add VM preemption latency measuring tool vm-trace"Don Dugger3-0/+706
2016-01-04Add host environment setup scriptsYunhong Jiang3-0/+171
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>
2015-12-08kvmclock: add a new function to update env->tsc.WW-2015-52Liang Li3-16/+48
(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>
2015-12-04Add VM preemption latency measuring tool vm-traceDavid Su3-0/+706
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>
2015-12-02Add virtual functions support to ixgbe and i40e.José Pekkarinen1-1/+1
Change-Id: Iecc8205f443e2e47fc955c80bf6f0aa55db75447 Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
2015-12-01Merge "Add configuration to support OVS kernel module"Don Dugger1-7/+13
2015-12-01Merge "Bug fix."Don Dugger1-1/+1
2015-12-01Merge "Make vfio MSI interrupt be non-threaded."Don Dugger1-1/+1
2015-11-24Make vfio MSI interrupt be non-threaded.Yunhong Jiang1-1/+1
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
2015-11-20Force tick interrupt and get rid of softirq magicYunhong Jiang2-44/+31
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>
2015-11-20Add configuration to support OVS kernel moduleYunhong Jiang1-7/+13
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>
2015-11-17Fix systemd boot.José Pekkarinen1-1/+1
Change-Id: I3e91161abafc62554e793e4851df639c099421e7 Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
2015-11-17Update the kernel config to match the kernel version shipped.José Pekkarinen1-1/+2
Change-Id: Icd51e1625a57867b2f79cb2b2d1ab21b23bd80e0 Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
2015-11-12Bug fix.Liang Li1-1/+1
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>
2015-11-06Merge "Add build script for continuous integration"Don Dugger1-0/+50
2015-11-04Add build script for continuous integrationDavid Su1-0/+50
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>
2015-11-03Merge "Add the opnfv kernel config file"Don Dugger1-0/+3741
2015-10-29Merge "These changes are a raw update to a vanilla kernel 4.1.10, with the ↵Don Dugger343-1508/+3092
recently announced rt patch patch-4.1.10-rt10.patch. No further changes needed."
2015-10-29Add the opnfv kernel config fileYunhong Jiang1-0/+3741
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>
2015-10-29Merge "migration: do cleanup operation after completion"Don Dugger3-9/+7
2015-10-19These changes are a raw update to a vanilla kernel 4.1.10, with theJosé Pekkarinen343-1508/+3092
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>
2015-10-16These changes comes from the qemu version 2.4.0.1 bugfix release,José Pekkarinen4-12/+29
taken from the official qemu wiki page. No further changes included. Change-Id: I690a0aba6a986291252e766c60cf1fbea9a0cd46 Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
2015-10-09Kernel bump from 4.1.3-rt to 4.1.7-rt.José Pekkarinen628-4568/+6245
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>
2015-09-24migration: do cleanup operation after completionLiang Li3-9/+7
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>
2015-09-10Example as code, documentation template for sphinx buildAric Gardner4-0/+150
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>
2015-09-01Add qemu 2.4.0Yang Zhang15649-0/+4157143
Change-Id: Ic99cbad4b61f8b127b7dc74d04576c0bcbaaf4f5 Signed-off-by: Yang Zhang <yang.z.zhang@intel.com>
2015-08-04Add the rt linux 4.1.3-rt3 as baseYunhong Jiang49465-0/+19519726
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>
2015-07-12Change nic-names to kvmDon Dugger1-3/+3
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
2015-07-10Adding .gitreview INFO and LicenseAric Gardner3-0/+42
Change-Id: I5f26b9e9386f7777de96d6c481177bcf8825e63b Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
2015-07-10Initial empty repositoryAric Gardner0-0/+0