kvmfornfv.git
8 years agoRestore the non_hz_full 81/17381/1
Yunhong Jiang [Tue, 18 Aug 2015 18:23:10 +0000 (11:23 -0700)]
Restore the non_hz_full

Please refer to http://comments.gmane.org/gmane.linux.kernel/1891417, the
last two mails on this discussion.

The non_hz_full is important for RT, so take it back temporarily.

Unluckily I didn't find the corresponding reverting patch on the RT tree.

Upstream status: pending

Change-Id: I2748a8f9b7a98ef2185a1da60089984432393eff

Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
8 years agoAdd the "timers: do not raise softirq unconditionally" temporarily 26/1226/7
Yunhong Jiang [Tue, 18 Aug 2015 18:07:48 +0000 (11:07 -0700)]
Add the "timers: do not raise softirq unconditionally" temporarily

This patch enable the nohz_full and is important for RT. Bring it back
temporarily, while waiting for more work on RT community.

Please refer to https://lkml.org/lkml/2015/3/17/783 for more information
of the revert.

A little rebase needed because it's reverted on old code base.

Please notice that we change the rt_mutex_trylock() so that we can get
the tvec_base lock there. This is sure to be wrong, and should be fixed
cleanly. And that's the major reason the original patch are reverted on the
upstream RT linux. Will discuss with upstream on how to achieve the
solution.

Upstream status: pending

Change-Id: I2747e087faf4145b69b800a60b8d9414bc71e206
Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
8 years agoRebase fuel-plugin for kvmfornfv to fuel 9.0 83/15583/3
davidjchou [Tue, 14 Jun 2016 15:04:29 +0000 (08:04 -0700)]
Rebase fuel-plugin for kvmfornfv to fuel 9.0

1. Uplifit fuel-plugin for kvmfornfv to fuel 9.0 due to that fuel 9.0 will be the
   deployment tool of OPNFV Colorado release.
2. Fixed quirk for kernel.
3. Added all tools and libs for building OVS module.
4. Allow KVM developer to build fuel-plugin-kvm after they modify the kerenl
   code without commiting their change into the repo first.  So, they can test
   their code change by fuel-plugin-kvm till they satisfy with their change,
   then commit to the repo.
5. The final code built into OPNFV fuel iso will depend on the commit ID for
   kvmfornfv speicifed in fuel for OPNFV source tree.

Change-Id: Iaf9ff49c69df374d0757884cfdac4cccee3eebe4
Signed-off-by: davidjchou <david.j.chou@intel.com>
8 years agoMove quirks out of build script 31/15231/1
Donald Dugger [Mon, 6 Jun 2016 15:30:38 +0000 (15:30 +0000)]
Move quirks out of build script

Due to expediencyh concerns some quirk code was placed in the build
script in order to get the Brahmaputra release out on time.  These
quirks don't belong in the script itself and, now that there is a
mechanisms to applly arbitrary patch files during the build script,
this patch moves that quirk code out to the separate patch file
area.

Upstream status - NA

Change-Id: Ib8100eef00009bbaf0e16b28849821ef5878f9f5
Signed-off-by: Donald Dugger <n0ano@n0ano.com>
8 years agoMerge "Update the files in fuel-plugin to match the upstream"
Don Dugger [Mon, 6 Jun 2016 13:30:05 +0000 (13:30 +0000)]
Merge "Update the files in fuel-plugin to match the upstream"

8 years agoUpdate the files in fuel-plugin to match the upstream 47/15147/1
davidjchou [Sat, 4 Jun 2016 00:47:59 +0000 (17:47 -0700)]
Update the files in fuel-plugin to match the upstream

Since the upstream kvmfornfv kernel version and OVS changed, updated
the related files in fuel-plugin, so it can build fuel-plugin-kvm with
latest kvmfornfv kernel and OVS module.

Upstream status: kvmfornfv kernel 4.4.6-rt14nfv

Change-Id: I6a7c312f7527acae4d2de64c7b43da4fbec41504
Signed-off-by: davidjchou <david.j.chou@intel.com>
8 years agoMerge "These changes are the raw update to qemu-2.6."
Don Dugger [Fri, 3 Jun 2016 03:33:22 +0000 (03:33 +0000)]
Merge "These changes are the raw update to qemu-2.6."

8 years agoRemove config file changes from build script 07/14407/1
Donald Dugger [Thu, 5 May 2016 18:26:53 +0000 (18:26 +0000)]
Remove config file changes from build script

These changes are no longer needed as they are now (correctly) incorporated
in the actual config file in the source tree.

Upstream status: NA

Change-Id: Ide33453789338ba3f7692ca6108de89a4ac3c222
Signed-off-by: Don Dugger <n0ano@n0ano.com>
8 years agoMerge "Build uio as module to fix initialization of i40e devices in bare metal execut...
Jiang, Yunhong [Thu, 19 May 2016 23:40:22 +0000 (23:40 +0000)]
Merge "Build uio as module to fix initialization of i40e devices in bare metal execution of dpdk-16.04."

8 years agoThese changes are the raw update to qemu-2.6. 03/14303/1
José Pekkarinen [Wed, 18 May 2016 10:18:31 +0000 (13:18 +0300)]
These changes are the raw update to qemu-2.6.

Collission happened in the following patches:

migration: do cleanup operation after completion(738df5b9)
Bug fix.(1750c932f86)
kvmclock: add a new function to update env->tsc.(b52baab2)

The code provided by the patches was already in the upstreamed
version.

Change-Id: I3cc11841a6a76ae20887b2e245710199e1ea7f9a
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
8 years agoAdd patch to Linux 4.4 to support OVS 63/13763/2
Donald Dugger [Thu, 28 Apr 2016 21:39:53 +0000 (21:39 +0000)]
Add patch to Linux 4.4 to support OVS

Given that OVS doesn't support Linux 4.4 yet we need to add a patch
to the OVS sources so that we can build a 4.4 version of the OVS
loadable kernel module that works with the RT Linux 4.4 kernel used
in OPNFV.

The directory `patches/ovs' contains patches (currently only one) that
are applied against the OVS tree.  The Fuel build script is modified
to apply all of the patches in this directory to the OVS tree.  Then
a working OVS KLM is created that is then inserted into the RT kernel
DEB package so that the end result is an RT kernel that supports OVS.

Upstream status: NA

Change-Id: I361f92526fb4bcafbeab9ce21570202f4aad1632
Signed-off-by: Don Dugger <n0ano@n0ano.com>
8 years agoBuild uio as module to fix initialization of i40e devices 87/14087/1
José Pekkarinen [Fri, 13 May 2016 10:49:23 +0000 (13:49 +0300)]
Build uio as module to fix initialization of i40e devices
in bare metal execution of dpdk-16.04.

Upstream: NA.

Change-Id: Ia98461b15348a667c4989dfe1399f0c5bc0f0c12
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
8 years agoMerge "Reverted execution attribute of shell script files"
Don Dugger [Thu, 5 May 2016 15:10:28 +0000 (15:10 +0000)]
Merge "Reverted execution attribute of shell script files"

8 years agoMerge "Add kernel modules required for OPNFV"
Jiang, Yunhong [Thu, 5 May 2016 01:14:55 +0000 (01:14 +0000)]
Merge "Add kernel modules required for OPNFV"

8 years agoReverted execution attribute of shell script files 35/13635/1
davidjchou [Tue, 3 May 2016 23:17:36 +0000 (23:17 +0000)]
Reverted execution attribute of shell script files

Reverted execution attribute of shell script files in fuel-plugin
sub-dir. The execution attribute was lost when these files were
commited inside fuel-plugin sub-dir, and the executtion attribute of
these shell script files is necessary to the build of fuel-plugin-kvm.

Upstream status: NA

Change-Id: I0ac060a27c4a1570bff17864aa7db5b6b9edf732
Signed-off-by: davidjchou <david.j.chou@intel.com>
8 years agoCreate fuel kvm plugin 49/12549/4
Guo Ruijing [Tue, 3 May 2016 01:22:42 +0000 (09:22 +0800)]
Create fuel kvm plugin

Upstream status: NA

In Brahmaputra release, KVM plugin functionality was bundled inside the
fuel-plugin-qemu. In order for easy maintenance, the KVM plugin functionality
would be separated from fuel-plugin-qemu and moved into an independent
fuel-plugin-kvm and keep the source code here starting from Colorado release.

Change-Id: Id89069234a4529cca40f1887e2d947378f928dd2
Signed-off-by: davidjchou <david.j.chou@intel.com>
Signed-off-by: Guo Ruijing <ruijing.guo@intel.com>
8 years agoChange PTL to raghuveer.reddy@intel.com 45/12645/1
Aric Gardner [Mon, 25 Apr 2016 18:30:37 +0000 (14:30 -0400)]
Change PTL to raghuveer.reddy@intel.com

Change-Id: Id67d11079e738bc4180c395b86d56cfc81c3770f
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
8 years agoAdd kernel modules required for OPNFV 43/12643/1
Don Dugger [Mon, 25 Apr 2016 15:24:12 +0000 (15:24 +0000)]
Add kernel modules required for OPNFV

The OPNFV environment requires many kernel modules that are not
part of the default RT kernel environment.  This patch adds those
modules back in.

Upstream status: NA

Change-Id: Id4e63f3d2dd3e19614e9e080adf1cdae9ab26ee1

8 years agoUpdate opnfv kernel config for the new kernel 4.4.6-rt14. 15/12315/2
José Pekkarinen [Fri, 15 Apr 2016 07:39:42 +0000 (10:39 +0300)]
Update opnfv kernel config for the new kernel 4.4.6-rt14.

This config file is based in the previous one, adding the
changes needed in the config file for this new kernel version.

It has been added in kernel support for CephFS.

Upstream: NA.

Change-Id: I1de8b4678bdfa81f4fc204f4a02d11f11cb5ae87
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
8 years agoThese changes are the raw update to linux-4.4.6-rt14. Kernel sources
José Pekkarinen [Mon, 11 Apr 2016 07:41:07 +0000 (10:41 +0300)]
These changes are the raw update to linux-4.4.6-rt14. Kernel sources
are taken from kernel.org, and rt patch from the rt wiki download page.

During the rebasing, the following patch collided:

Force tick interrupt and get rid of softirq magic(I70131fb85).

Collisions have been removed because its logic was found on the
source already.

Change-Id: I7f57a4081d9deaa0d9ccfc41a6c8daccdee3b769
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
8 years agoRemove yang.z.zhang@intel.com as committer 25/10925/2
Aric Gardner [Tue, 1 Mar 2016 20:54:48 +0000 (15:54 -0500)]
Remove yang.z.zhang@intel.com as committer

Add jose.pekkarinen@nokia.com as committer

RT Ticket: 19272, 19265

Change-Id: Ia49e92674f2da2feea53e08231bb4fdd6b54ca88
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
8 years agoAdded license information 63/9763/6 stable/brahmaputra brahmaputra.1.0
raghu [Wed, 10 Feb 2016 21:55:50 +0000 (13:55 -0800)]
Added license information

Upstream Status : Not Applicable

For detalied license information please refer to  https://wiki.opnfv.org/documentation#licencing_your_documentation

Change-Id: Iacba57a9162b25abc474dbac236b4dee5f27544c

8 years agoMerge "Remove the code to apply yardstick patch"
Don Dugger [Thu, 28 Jan 2016 23:56:39 +0000 (23:56 +0000)]
Merge "Remove the code to apply yardstick patch"

8 years agoFix typos in the documentation. 43/8343/1
José Pekkarinen [Thu, 28 Jan 2016 16:54:09 +0000 (18:54 +0200)]
Fix typos in the documentation.

This is a candidate for the Brahmaputra branch.

Change-Id: Idbe41ac77f1aae902cd00af4bc9a0e3532f4284a
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
8 years agoAdd the live migration docuement 13/6913/4
Yunhong Jiang [Fri, 15 Jan 2016 20:05:38 +0000 (12:05 -0800)]
Add the live migration docuement

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>
8 years agoAdd the documentation for kvm4nfv project 61/6761/7
Yunhong Jiang [Thu, 14 Jan 2016 22:26:21 +0000 (14:26 -0800)]
Add the documentation for kvm4nfv project

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>
8 years agoRemove the code to apply yardstick patch 35/6935/1
Yunhong Jiang [Sat, 16 Jan 2016 06:16:52 +0000 (22:16 -0800)]
Remove the code to apply yardstick patch

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>
8 years agoMerge topic 'yardstick-integ-v2'
Don Dugger [Wed, 6 Jan 2016 21:31:21 +0000 (21:31 +0000)]
Merge topic 'yardstick-integ-v2'

* changes:
  Cyclictest invokation script
  Add the yardstick invokation script

8 years agoMerge "Build vfio-pci as a module, as dpdk tools expect it to be."
Don Dugger [Wed, 6 Jan 2016 20:10:02 +0000 (20:10 +0000)]
Merge "Build vfio-pci as a module, as dpdk tools expect it to be."

8 years agoMerge topic 'yardstick-integ-v2'
Don Dugger [Wed, 6 Jan 2016 19:26:04 +0000 (19:26 +0000)]
Merge topic 'yardstick-integ-v2'

* changes:
  A script to launch real time guest
  Script to create the guest image
  Script to create the rt-tests rpm

8 years agoMerge "Add guest environment setup scripts"
Don Dugger [Wed, 6 Jan 2016 19:25:34 +0000 (19:25 +0000)]
Merge "Add guest environment setup scripts"

8 years agoFix for KVMFORNFV-23(Fuel installed KVM kernel blank screens on boot). 27/5627/1
José Pekkarinen [Wed, 6 Jan 2016 05:50:48 +0000 (07:50 +0200)]
Fix for KVMFORNFV-23(Fuel installed KVM kernel blank screens on boot).

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>
8 years agoCyclictest invokation script 67/4567/6
Yunhong Jiang [Fri, 4 Dec 2015 23:09:37 +0000 (18:09 -0500)]
Cyclictest invokation script

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>
8 years agoA script to launch real time guest 63/4563/5
Yunhong Jiang [Fri, 4 Dec 2015 23:01:29 +0000 (18:01 -0500)]
A script to launch real time guest

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>
8 years agoAdd the yardstick invokation script 65/4565/6
Yunhong Jiang [Tue, 8 Dec 2015 04:30:30 +0000 (23:30 -0500)]
Add the yardstick invokation script

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>
8 years agoScript to create the guest image 61/4561/5
Yunhong Jiang [Wed, 9 Dec 2015 19:55:56 +0000 (14:55 -0500)]
Script to create the guest image

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>
8 years agoAdd guest environment setup scripts 57/4557/4
Yunhong Jiang [Fri, 4 Dec 2015 19:58:39 +0000 (14:58 -0500)]
Add guest environment setup scripts

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>
8 years agoNo change to the grub default setting 17/5617/1
Yunhong Jiang [Wed, 6 Jan 2016 03:29:18 +0000 (19:29 -0800)]
No change to the grub default setting

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>
8 years agoScript to create the rt-tests rpm 59/4559/4
Yunhong Jiang [Fri, 11 Dec 2015 19:38:49 +0000 (14:38 -0500)]
Script to create the rt-tests rpm

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>
8 years agoMerge "Add host environment setup scripts"
Jiang, Yunhong [Wed, 6 Jan 2016 03:28:20 +0000 (03:28 +0000)]
Merge "Add host environment setup scripts"

8 years agoMerge "Add virtual functions support to ixgbe and i40e."
Don Dugger [Tue, 5 Jan 2016 22:58:55 +0000 (22:58 +0000)]
Merge "Add virtual functions support to ixgbe and i40e."

8 years agoMerge "Add VM preemption latency measuring tool vm-trace"
Don Dugger [Tue, 5 Jan 2016 22:58:35 +0000 (22:58 +0000)]
Merge "Add VM preemption latency measuring tool vm-trace"

8 years agoAdd host environment setup scripts 23/5523/1
Yunhong Jiang [Fri, 4 Dec 2015 19:47:31 +0000 (14:47 -0500)]
Add host environment setup scripts

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>
9 years agokvmclock: add a new function to update env->tsc. 37/4037/1 WW-2015-52
Liang Li [Tue, 8 Dec 2015 01:14:07 +0000 (09:14 +0800)]
kvmclock: add a new function to update env->tsc.

(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>
9 years agoAdd VM preemption latency measuring tool vm-trace 01/3501/3
David Su [Sat, 21 Nov 2015 00:34:57 +0000 (16:34 -0800)]
Add VM preemption latency measuring tool vm-trace

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>
9 years agoAdd virtual functions support to ixgbe and i40e. 57/3557/2
José Pekkarinen [Tue, 24 Nov 2015 07:24:14 +0000 (09:24 +0200)]
Add virtual functions support to ixgbe and i40e.

Change-Id: Iecc8205f443e2e47fc955c80bf6f0aa55db75447
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
9 years agoMerge "Add configuration to support OVS kernel module"
Don Dugger [Tue, 1 Dec 2015 21:40:52 +0000 (21:40 +0000)]
Merge "Add configuration to support OVS kernel module"

9 years agoMerge "Bug fix."
Don Dugger [Tue, 1 Dec 2015 17:15:14 +0000 (17:15 +0000)]
Merge "Bug fix."

9 years agoMerge "Make vfio MSI interrupt be non-threaded."
Don Dugger [Tue, 1 Dec 2015 17:14:57 +0000 (17:14 +0000)]
Merge "Make vfio MSI interrupt be non-threaded."

9 years agoMake vfio MSI interrupt be non-threaded. 28/1228/5
Yunhong Jiang [Tue, 18 Aug 2015 18:27:04 +0000 (11:27 -0700)]
Make vfio MSI interrupt be non-threaded.

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

9 years agoForce tick interrupt and get rid of softirq magic 91/2891/4
Yunhong Jiang [Tue, 27 Oct 2015 04:54:35 +0000 (00:54 -0400)]
Force tick interrupt and get rid of softirq magic

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>
9 years agoAdd configuration to support OVS kernel module 67/3367/2
Yunhong Jiang [Tue, 17 Nov 2015 15:29:02 +0000 (10:29 -0500)]
Add configuration to support OVS kernel module

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>
9 years agoFix systemd boot. 27/3327/2
José Pekkarinen [Tue, 17 Nov 2015 07:58:16 +0000 (09:58 +0200)]
Fix systemd boot.

Change-Id: I3e91161abafc62554e793e4851df639c099421e7
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
9 years agoBuild vfio-pci as a module, as dpdk tools expect it to be. 39/3339/1
José Pekkarinen [Tue, 17 Nov 2015 08:14:28 +0000 (10:14 +0200)]
Build vfio-pci as a module, as dpdk tools expect it to be.

Change-Id: I4c0fe67609fc74fc60e6a2c99d448fd47a6d2a86
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
9 years agoUpdate the kernel config to match the kernel version shipped. 21/3321/1
José Pekkarinen [Tue, 17 Nov 2015 07:34:58 +0000 (09:34 +0200)]
Update the kernel config to match the kernel version shipped.

Change-Id: Icd51e1625a57867b2f79cb2b2d1ab21b23bd80e0
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
9 years agoBug fix. 37/3237/1
Liang Li [Thu, 12 Nov 2015 02:56:44 +0000 (10:56 +0800)]
Bug fix.

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>
9 years agoMerge "Add build script for continuous integration"
Don Dugger [Fri, 6 Nov 2015 19:11:08 +0000 (19:11 +0000)]
Merge "Add build script for continuous integration"

9 years agoAdd build script for continuous integration 69/1269/9
David Su [Thu, 20 Aug 2015 23:12:47 +0000 (16:12 -0700)]
Add build script for continuous integration

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>
9 years agoMerge "Add the opnfv kernel config file"
Don Dugger [Tue, 3 Nov 2015 16:14:18 +0000 (16:14 +0000)]
Merge "Add the opnfv kernel config file"

9 years agoMerge "These changes are a raw update to a vanilla kernel 4.1.10, with the recently...
Don Dugger [Thu, 29 Oct 2015 22:15:25 +0000 (22:15 +0000)]
Merge "These changes are a raw update to a vanilla kernel 4.1.10, with the recently announced rt patch patch-4.1.10-rt10.patch. No further changes needed."

9 years agoAdd the opnfv kernel config file 20/1120/9
Yunhong Jiang [Tue, 4 Aug 2015 21:21:51 +0000 (14:21 -0700)]
Add the opnfv kernel config file

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>
9 years agoMerge "migration: do cleanup operation after completion"
Don Dugger [Thu, 29 Oct 2015 08:05:08 +0000 (08:05 +0000)]
Merge "migration: do cleanup operation after completion"

9 years agoThese changes are a raw update to a vanilla kernel 4.1.10, with the 53/2653/1
José Pekkarinen [Mon, 19 Oct 2015 05:35:30 +0000 (08:35 +0300)]
These changes are a raw update to a vanilla kernel 4.1.10, with the
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>
9 years agoThese changes comes from the qemu version 2.4.0.1 bugfix release, 81/2581/1
José Pekkarinen [Fri, 16 Oct 2015 06:46:11 +0000 (09:46 +0300)]
These changes comes from the qemu version 2.4.0.1 bugfix release,
taken from the official qemu wiki page. No further changes included.

Change-Id: I690a0aba6a986291252e766c60cf1fbea9a0cd46
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
9 years agoKernel bump from 4.1.3-rt to 4.1.7-rt. 75/2375/1
José Pekkarinen [Fri, 9 Oct 2015 05:42:44 +0000 (08:42 +0300)]
Kernel bump from 4.1.3-rt to 4.1.7-rt.

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>
9 years agomigration: do cleanup operation after completion 39/1939/1
Liang Li [Thu, 24 Sep 2015 00:56:12 +0000 (08:56 +0800)]
migration: do cleanup operation after completion

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>
9 years agoExample as code, documentation template for sphinx build 95/1495/1
Aric Gardner [Thu, 10 Sep 2015 19:37:26 +0000 (15:37 -0400)]
Example as code, documentation template for sphinx build

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>
9 years agoAdd qemu 2.4.0 58/1358/1
Yang Zhang [Fri, 28 Aug 2015 01:58:54 +0000 (09:58 +0800)]
Add qemu 2.4.0

Change-Id: Ic99cbad4b61f8b127b7dc74d04576c0bcbaaf4f5
Signed-off-by: Yang Zhang <yang.z.zhang@intel.com>
9 years agoAdd the rt linux 4.1.3-rt3 as base 19/1119/1
Yunhong Jiang [Tue, 4 Aug 2015 19:17:53 +0000 (12:17 -0700)]
Add the rt linux 4.1.3-rt3 as base

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>
9 years agoChange nic-names to kvm 95/995/1
Don Dugger [Mon, 13 Jul 2015 05:24:42 +0000 (23:24 -0600)]
Change nic-names to kvm

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

9 years agoAdding .gitreview INFO and License 93/993/1
Aric Gardner [Fri, 10 Jul 2015 17:27:02 +0000 (13:27 -0400)]
Adding .gitreview INFO and License

Change-Id: I5f26b9e9386f7777de96d6c481177bcf8825e63b
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
9 years agoInitial empty repository
Aric Gardner [Fri, 10 Jul 2015 15:07:27 +0000 (15:07 +0000)]
Initial empty repository