Who broke the code? Finding problems quickly in a quickly evolving opensource project

*
Accepted Session
Short Form
Intermediate
Scheduled: Thursday, June 26, 2014 from 3:45 – 4:30pm in B304

Excerpt

In this talk, we will overview the 0day kernel test infrastructure, an Intel project where the goal is to ensure the quality of Linux upstream and developmental kernels. The project runs 7x24 tests on bleeding edge code from 300+ kernel git trees.

Description

To ensure the quality of code in any open source project, any new patches merged should not cause performance regression, bugs or defects. If there are any problems, we need to root-cause the patch that introduces the problem alert the developer responsible in a timely manner. This requires a continuous and automated testing methodology.

In this talk, we will overview the 0day kernel test infrastructure, an Intel project where the goal is to ensure the quality of Linux upstream and developmental kernels. The project runs 7×24 tests on bleeding edge code from 300+ kernel git trees. In an average month it’s able to catch 20 power/performance/functional etc. runtime regressions and 400 build problems. It helps the Linux community to fix problems in the kernel at a very early stage.

Inside Intel, it serves as a tool for comprehensive patch evaluation and analysis. Every system metric the developers may care – watts, C state residency, throughput, latency, CPU time, … – can be monitored during the test, and the results may be compared between kernels, kconfigs, test parameters, test boxes, etc. The infrastructure also performs automatic patch bisection to locate the source of any problem. We send out any anomalies we found to the developers from the community, sometimes automatically via the test infrastructure.

Tags

linux, kernel, test infrastructure

Speaking experience

I've spoken at other Linux conferences before. See last year's Linux Plumbers conference.
http://www.linuxplumbersconf.org/2013/ocw/proposals/1299

My colleague Fengguang has given a talk on the project at the Linux Kernel Summit 2013.

Speaker