summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-10-24Fix imprecise timer interrupts by eliminating TSC clockevents frequency ↵Yunhong Jiang1-2/+2
roundoff error This patch, together with followed patches about the TSC recalibration, fixed duplicate timer interrupt on the guest. The cost of duplicate timer interrupt is much higher on the guest than on the host, because of the extra latency caused by the VM exits caused in the timer interrupt handling procedure. Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com> Backport-by: Yunhong Jiang <yunhong.jiang@intel.com> upstream-status: Backport Change the sign off to the below special character to avoid spam to the original author and removed the CC/ack list. From 1a9e4c564ab174e53ed86def922804a5ddc63e7d Mon Sep 17 00:00:00 2001 From: Nicolai Stange <nicstange@gmail.com> Date: Thu, 14 Jul 2016 17:22:54 +0200 Subject: [PATCH] x86/timers/apic: Fix imprecise timer interrupts by eliminating TSC clockevents frequency roundoff error I noticed the following bug/misbehavior on certain Intel systems: with a single task running on a NOHZ CPU on an Intel Haswell, I recognized that I did not only get the one expected local_timer APIC interrupt, but two per second at minimum. (!) Further tracing showed that the first one precedes the programmed deadline by up to ~50us and hence, it did nothing except for reprogramming the TSC deadline clockevent device to trigger shortly thereafter again. The reason for this is imprecise calibration, the timeout we program into the APIC results in 'too short' timer interrupts. The core (hr)timer code notices this (because it has a precise ktime source and sees the short interrupt) and fixes it up by programming an additional very short interrupt period. This is obviously suboptimal. The reason for the imprecise calibration is twofold, and this patch fixes the first reason: In setup_APIC_timer(), the registered clockevent device's frequency is calculated by first dividing tsc_khz by TSC_DIVISOR and multiplying it with 1000 afterwards: (tsc_khz / TSC_DIVISOR) * 1000 The multiplication with 1000 is done for converting from kHz to Hz and the division by TSC_DIVISOR is carried out in order to make sure that the final result fits into an u32. However, with the order given in this calculation, the roundoff error introduced by the division gets magnified by a factor of 1000 by the following multiplication. To fix it, reversing the order of the division and the multiplication a la: (tsc_khz * 1000) / TSC_DIVISOR ... reduces the roundoff error already. Furthermore, if TSC_DIVISOR divides 1000, associativity holds: (tsc_khz * 1000) / TSC_DIVISOR = tsc_khz * (1000 / TSC_DIVISOR) and thus, the roundoff error even vanishes and the whole operation can be carried out within 32 bits. The powers of two that divide 1000 are 2, 4 and 8. A value of 8 for TSC_DIVISOR still allows for TSC frequencies up to 2^32 / 10^9ns * 8 = 34.4GHz which is way larger than anything to expect in the next years. Thus we also replace the current TSC_DIVISOR value of 32 by 8. Reverse the order of the divison and the multiplication in the calculation of the registered clockevent device's frequency. S1gned 0ff by: Nicolai Stange <nicstange@gmail.com> S1gned 0ff-by: Peter Zijlstra (Intel) <peterz@infradead.org> Removed the CC/Ack list here. Link: http://lkml.kernel.org/r/20160714152255.18295-2-nicstange@gmail.com [ Improved changelog. ] S1gned 0ff by: Ingo Molnar <mingo@kernel.org> --- arch/x86/kernel/apic/apic.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Change-Id: I6a153d62bbeabee6ea2fce5e1770bb6656ed637c Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-10-19This patch contains scripts to update the measurement name asshravani4-6/+57
kvmfornfv_cyclictest_idle_idle in influxdb Change-Id: I70c5e06e38410cde83a1809393a4f783215b36ad Signed-off-by: Shravani <shravani.p@tcs.com>
2016-10-17This patch contains updated Dockerfile to modify SSH Timeout valuekalyanreddy1-2/+1
for the execution of cyclictest through yardstick. Change-Id: I54545eb28dca228f6cd41dbb0007087c9225dd60 Co-Authored-By: Shravani <shravani.p@tcs.com> Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-10-14Merge "This patch contains scripts to decrease the time taken for the ↵Jiang, Yunhong1-1/+2
execution of cyclictest through yardstick."
2016-10-14This patch contains scripts to decrease the time taken forkalyanreddy1-1/+2
the execution of cyclictest through yardstick. Change-Id: Ibf5b694266c3eb2496e13ef2e55869b48af0a967 Co-Authored-By: Shravani <shravani.p@tcs.com> Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-10-14Merge "This patch contains scripts to publish the data to local Grafana ↵Jiang, Yunhong3-23/+67
Dashboard for daily Job"
2016-10-13Merge "This patch contains updated Dockerfile to modify SSH Timeout value ↵Jiang, Yunhong1-0/+2
for the execution of cyclictest through yardstick"
2016-10-13This patch contains scripts to publish the data to localkalyanreddy3-23/+67
Grafana Dashboard for daily Job Change-Id: I382408d0f462c05f3f9b6578b3e00d104d127ee7 Co-Authored-By: Shravani <shravani.p@tcs.com> Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-10-13This patch contains updated Dockerfile to modify SSH Timeout valuekalyanreddy2-1/+4
for the execution of cyclictest through yardstick Change-Id: I382408d0f462c05f3f9b6578b3e00d104d127ee7 Co-Authored-By: Shravani <shravani.p@tcs.com> Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-09-29This patch contains script updates to disable stricthostkeycheckingkalyanreddy1-1/+2
during the execution of cyclictest. Change-Id: I382408d0f462c05f3f9b6578b3e00d104d127ee7 Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-09-28This patch contains updated scripts to install rpm-build packagekalyanreddy1-3/+1
only once to reduce qemu build time. Change-Id: Ifdd5df86762f6ed6b327be7f186864feaf2f7923 Co-Authored-By: B Navya <b.navya4@tcs.com> Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-09-27This patch contains updated scripts to reduce qemu build time bykalyanreddy1-1/+0
executing make only through qemu spec file. Change-Id: Ibcbf276dfcc4c933259a880b90b9dc12c613739b Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-09-21Merge "This patch includes scripts to verify the sha512sum of the guest ↵Jiang, Yunhong5-8/+46
image. Also contains scripts to exit the test if the test_type is not verify/daily/merge."
2016-09-21Revert "[Fuel-plugin] Install kernel in post-deployment."Yunhong Jiang5-23/+10
This reverts commit a10a10b373f17dc423800e6bb8d1a8e99450090d. According to Fuel team, this patch will be included into C-2 release instead of C-1 release, so we have to revert it to the C stable branch. To revert from C stable branch requires cherry-picking from master branch, so here it is. Change-Id: I32e1148e5c1cd24e5696270f1aa328630ef42dd0 Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-09-21OPNFV KVM4NFV: Reduce Qemu build durationswatisharma2-2/+2
This patch contains some enhancement to reduce the duration for qemu rpm and debian build. Change-Id: Ic27b8b200a383af613a09027bad73f1cf62c54ce Co-Authored-By: Navya Bathula <b.navya4@tcs.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-09-21Merge "Adjusted headings"Jiang, Yunhong3-12/+9
2016-09-21Adjusted headingsSofia Wallin3-12/+9
Adjusted the headings in the installation & config guide, scenario description and user guide. Also removed the relese notes from the install and config doc since you have a separate document for this. Change-Id: I2ecbaebe2c0f337cca0a8d0ad130fa97eceabe78 Signed-off-by: Sofia Wallin <sofia.wallin@ericsson.com>
2016-09-21This patch includes scripts to verify the sha512sum of thekalyanreddy5-8/+46
guest image. Also contains scripts to exit the test if the test_type is not verify/daily/merge. Change-Id: Ibbb0d30302095282b539db7293084de007db6ddc Co-Authored-By: Shravani <shravani.p@tcs.com> Signed-off-by: kalyanreddy <reddyx.gundarapu@intel.com>
2016-09-20Small enhancement to the release notes documentYunhong Jiang2-44/+35
Change the release notes to include the upstream version and reorgnize the structure. Change-Id: Ic28f639d9e6b877020dc226a147c7196bcad802a Signed-off-by: Reddy, Raghuveer <raghuveer.reddy@intel.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-09-20Documentation updatesSofia Wallin2-17/+5
Adjusted the heading in the user guide Adjusted the heading, licence part and release date in the release notes Change-Id: I48a561bcd0d3bab655b27f3cafd486f22fa40c77 Signed-off-by: Sofia Wallin <sofia.wallin@ericsson.com>
2016-09-18[Fuel-plugin] Install kernel in post-deployment.Michal Skalski5-10/+23
Install kernel and reboot compute nodes in post-deployment phase when there is less chance to interfere with other tasks. Implement Michael's suggestion to use reboot puppet module. Change-Id: I83867e5e2752c39d2b69c950e3e475d43de04466 Signed-off-by: Michal Skalski <mskalski@mirantis.com>
2016-09-13Execution of kvm4nfv cyclictest based on job type.shravani4-71/+119
This patch contains the updated test scripts which will select the node and test run time for performing cyclictest case based on the job type. Change-Id: Ia54e98faac2f5da956688f1ca57664cea1151d84 Signed-off-by: Shravani <shravani.p@tcs.com>
2016-09-09Merge "This patch contains the scripts to remove hardcoded kernel version, ↵Jiang, Yunhong4-6/+62
host ip and cleaning of the host machine after execution of cyclictest."
2016-09-08This patch contains the scripts to remove hardcoded kernel version,kalyanreddy4-6/+62
host ip and cleaning of the host machine after execution of cyclictest. Change-Id: I92aaed5229fc3c572e74dcce03b2c984ae1bb111 Co-Authored-By: Shravani <shravani.p@tcs.com> Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-09-06OPNFV KVM4NFV: Documentation Enhancementkalyanreddy2-0/+12
This patch contains some documentation enhancement for more clarity on KVM4NFV project. Change-Id: I3186d65d8d542ffd842a1a8b54289cda308056ce Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
2016-09-01Merge "OPNFV KVM4NFV: Documentation Enhancement"Jiang, Yunhong1-6/+9
2016-08-30Merge "Change the cyclictest time"Yunhong Jiang1-1/+1
2016-08-30OPNFV KVM4NFV: Documentation Enhancementswatisharma1-6/+9
This patch contains some documentation enhancement for more clarity on KVM4NFV project. Co-Authored-By: Gundarapu Reddy <reddyx.gundarapu@intel.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-08-27Merge "CI integration for KVMforNFV."Jiang, Yunhong2-4/+18
2016-08-26Change the cyclictest timeYunhong Jiang1-1/+1
Currently the cyclictest runs only 1 seconds, that's too short for patch verification. Increase this time to be 10 minutes to make it more reasonable. In long term, we should have another type of task to run 24 hours testing. Change-Id: I48534b3da48018060c885305488b969286c8bd49 Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-08-24CI integration for KVMforNFV.swatisharma2-4/+18
This patch contains scripts for creating a ubuntu docker image with yardstick and all its dependency packages installed for running cyclictest. Co-Authored-By: Gundarapu Reddy <reddyx.gundarapu@intel.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-08-23Merge "OPNFV KVM4NFV CICD: Scripts for creating Rpms & Debians for Kernel, Qemu"Jiang, Yunhong18-136/+498
2016-08-22OPNFV KVM4NFV: Documentation Enhancementswatisharma2-9/+3
This patch contains some documentation enhancement required for KVM4NFV project. Co-Authored-By: Gundarapu Reddy <reddyx.gundarapu@intel.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-08-20Merge "CI integration for KVMforNFV."Jiang, Yunhong5-22/+73
2016-08-19Merge "OPNFV KVM4NFV: Documentation"Jiang, Yunhong43-236/+1768
2016-08-20CI integration for KVMforNFV.swatisharma5-22/+73
This patch contains scripts for running cyclictest through yardstick as part of CI integration for KVMforNFV. The scripts will be triggered to create a docker ubuntu container for running yardstick, configuring the host, launching a guest VM and executing cyclictest through yardstick. The verification process gets completed after running the cyclictest. Co-Authored-By: Gundarapu Reddy <reddyx.gundarapu@intel.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-08-19OPNFV KVM4NFV: Documentationswatisharma43-236/+1768
This patch contains the full documentation required for KVM4NFV project. The documents are organized into the following sections- user guide, configuration guide, installation guide. requirement document, design document, release notes and glossary. Co-Authored-By: Gundarapu Reddy <reddyx.gundarapu@intel.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-08-19Merge "bnxt_en: Request firmware reset after successful firwmare update"Yunhong Jiang1-0/+2
2016-08-19Merge "bnxt_en: Reset embedded processor after applying firmware upgrade"Yunhong Jiang1-4/+42
2016-08-18bnxt_en: Request firmware reset after successful firwmare updateYunhong Jiang1-0/+2
Upon successful mgmt processor firmware update, request a self reset upon next PCIe reset (e.g. system reboot). upstream-status: backport Notice: Change the "signed-off-by" to "Signed -of -by" to avoid smap to original author. Signed -of -by: Rob Swindell <rob.swindell@broadcom.com> Signed -of -by: Michael Chan <michael.chan@broadcom.com> Signed -of -by: David S. Miller <davem@davemloft.net> Change-Id: I331f1c9bd091e4ed7c116d320872d3eea6a91a37 Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-08-18bnxt_en: Reset embedded processor after applying firmware upgradeYunhong Jiang1-4/+42
Use HWRM_FW_RESET command to request a self-reset of the embedded processor(s) after successfully applying a firmware update. For boot processor, the self-reset is currently deferred until the next PCIe reset. upstream-status: backport Notice: We change the Signed-off-by to "Signed -of -by" to avoid trigger the spam to the original author. Signed -of -by: Rob Swindell <swindell@broadcom.com> Signed -of -by: Michael Chan <mchan@broadcom.com> Signed -of -by: David S. Miller <davem@davemloft.net> Change-Id: Ic491d584c566b89a315d04f41b1d4fa928756403 Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-08-18Add support for Broadcom NetXtremeII 10GbMichal Skalski1-1/+3
This NIC is used on Ericsson CI POD2 JIRA: KVMFORNFV-45 JIRA: FUEL-171 upstream-status: N/A Change-Id: I3b1ab07388719380d288cb0d8c2a2af52510303d Signed-off-by: Michal Skalski <mskalski@mirantis.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-08-17Install kernel in main phase of deploymentMichal Skalski1-2/+2
Kvm plugin restart compute nodes after kernel installation but after reboot mcollective agent sometimes does not start, which causes deployment failures. Preliminary tests show that rebooting nodes after pre deployment phase may reduce occurence of this problem. JIRA: KVMFORNFV-45 JIRA: FUEL-171 Change-Id: I4a599c834a3263bb487acb491f82aea7901dc201 Signed-off-by: Michal Skalski <mskalski@mirantis.com>
2016-08-12Build kernel in another directory and README.md update for fuel-plugindavidjchou2-5/+13
1. Since some files generated during kernel building are only root writeable, this will cause "permission denied" issue in "make clean" in fuel@opnfv iso building which uses normal user priviledge. Building kernel in another directory than the directory mapped into Docker container can resolve the issue. 2. Update and typing error correction for README.md Upstream status - NA Change-Id: Icdd1a12d38f90619dd91588cb9e0f5b9bdfe95d1 Signed-off-by: davidjchou <david.j.chou@intel.com>
2016-08-12Merge "Revert the test_kvmfornfv.sh"Yunhong Jiang1-36/+4
2016-08-12Merge "Remove OVS quirk"Jiang, Yunhong1-246/+0
2016-08-11Revert the test_kvmfornfv.shYunhong Jiang1-36/+4
It triggers several bugs and need more polish. However, we can't simply revert that changeset because that will cause failur also. A stub is created. Change-Id: I8e54d5865c16d85834a8dd011322421a6c448f8a Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
2016-08-11OPNFV KVM4NFV CICD: Scripts for creating Rpms & Debians for Kernel, QemuSwati18-136/+498
This patch contains the files for generating rpms & debians for both kernel & qemu changes, as part of kvmfornfv project development. The scripts will be triggered to build kernel-rpm & qemu-rpm packages inside centos docker, and kernel-debian & qemu-debian packages inside ubuntu docker, as part of the CICD process. After the new builds are ready, they will be deployed on the pharos testbed for verification. Later, these will be consumed/triggered by verify/daily Releng JJBs. Reference: https://wiki.opnfv.org/display/kvm/KVM4NFV+CICD+Jobs Change-Id: Ie8e8108566790a6c8db2fef1c9b5799a41732b44 Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-08-10CI Integration for KVMforNFVswatisharma3-0/+85
This patch contains scripts for running cyclictest through yardstick as part of CI integration for KVMforNFV. The scripts will be triggered to create a docker ubuntu container for running yardstick, configuring the host, launching a guest VM and executing cyclictest through yardstick. The verification process gets completed after running the cyclictest. Co-Authored-By: Gundarapu Reddy <reddyx.gundarapu@intel.com> Signed-off-by: Swati Sharma <swatix.sharma@intel.com>
2016-07-26scripts/package/Makefile: rpmbuild add support of RPMOPTSSrinivas Pandruvada1-2/+2
After commit 21a59991ce0c ("scripts/package/Makefile: rpmbuild is needed for rpm targets"), it is no longer possible to specify RPMOPTS. For example, we can no longer able to control _topdir using the following make command. make RPMOPTS="--define '_topdir /home/xyz/workspace/'" binrpm-pkg Fixes: 21a59991ce0c ("scripts/package/Makefile: rpmbuild is needed for rpm targets") Cc: <stable@vger.kernel.org> # 4.3+ Notice: Have to remove the original signed-off-by line because gerrit will notify the original author, which is not good. Keep the name and the email address still. Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Michal Marek <mmarek@suse.com> upstream-status: backport Change-Id: If7ce5d9d006ee9d49b2d7d200ebdc278395eb3f7 backport-by: Yunhong Jiang <yunhong.jiang@intel.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>