This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
start [2014-08-29 23:52] tbird20d [Some features of kselftest] |
start [2016-09-27 18:56] ShuahKhan [Resources] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== kselftest wiki ===== | ||
This wiki is dedicated to holding information about the kselftest feature of the Linux kernel. | This wiki is dedicated to holding information about the kselftest feature of the Linux kernel. | ||
- | ==== About kselftest ==== | + | ===== About kselftest ===== |
The purpose of kselftest is to provide kernel developers and end-users a quick method of running tests against | The purpose of kselftest is to provide kernel developers and end-users a quick method of running tests against | ||
- | the Linux kernel. As of this writing, Samsung developer Shuah Kahn is the project leader. | + | the Linux kernel. As of this writing, Samsung developer Shuah Khan is the project leader. |
kselftest was discussed at the 2014 kernel summit (in August, 2014), with Shuah making | kselftest was discussed at the 2014 kernel summit (in August, 2014), with Shuah making | ||
a presentation during the "core day" of the summit. Some followup discussions were held during an | a presentation during the "core day" of the summit. Some followup discussions were held during an | ||
"unconference" session the following day. | "unconference" session the following day. | ||
+ | |||
+ | Source code for kselftest tests is contained in the directory ''tools/testing/selftests'' in the kernel source tree. | ||
* There is an [[https://lwn.net/Articles/608959/|LWN.net Kernel self tests article]] which discusses the discussions held during the core day. | * There is an [[https://lwn.net/Articles/608959/|LWN.net Kernel self tests article]] which discusses the discussions held during the core day. | ||
* [[https://lwn.net/Articles/609374/|Paul McKenney's notes from discussions at the kernel summit]] are also available. | * [[https://lwn.net/Articles/609374/|Paul McKenney's notes from discussions at the kernel summit]] are also available. | ||
+ | * More discussion happened follwing the summit, on the ksummit-discuss mailing list. | ||
+ | * See [[http://lists.linuxfoundation.org/pipermail/ksummit-discuss/2014-August/thread.html#1059|this thread]] | ||
+ | * And [[http://lists.linuxfoundation.org/pipermail/ksummit-discuss/2014-August/thread.html#1191|this thread]] | ||
The kselftest feature (in rough draft form, I'd say) first appeared in kernel version 3.16. | The kselftest feature (in rough draft form, I'd say) first appeared in kernel version 3.16. | ||
Line 17: | Line 21: | ||
==== Some features of kselftest ==== | ==== Some features of kselftest ==== | ||
- | Here is a list of desired features for kselftest (some of which already exist (as of August 2014): | + | Here is a list of desired features for kselftest -- some of which already exist (as of August 2014): |
* ability to quickly execute tests (current target is under 20 minutes) | * ability to quickly execute tests (current target is under 20 minutes) | ||
* some developers want tests to run in a few seconds | * some developers want tests to run in a few seconds | ||
Line 23: | Line 27: | ||
* test source code is kept in the kernel source tree, where it is easily accessible to anyone working with the kernel source | * test source code is kept in the kernel source tree, where it is easily accessible to anyone working with the kernel source | ||
- | ==== Status ==== | + | ===== Status ===== |
- | + | As of August, 2014, Shuah Khan reported the status of kselftest as follows: | |
- | As of August, 2014, Shuah Kahn reported the status of kselftest as follows: | + | |
(see http://lists.linuxfoundation.org/pipermail/ksummit-discuss/2014-August/001059.html) | (see http://lists.linuxfoundation.org/pipermail/ksummit-discuss/2014-August/001059.html) | ||
+ | |||
Short summary of work done so far for 3.17: | Short summary of work done so far for 3.17: | ||
Line 42: | Line 46: | ||
* Greg KH sparked the kernel selftest idea, has been in the loop for the work done so far, and reviewed the plan for 3.18. | * Greg KH sparked the kernel selftest idea, has been in the loop for the work done so far, and reviewed the plan for 3.18. | ||
- | + | ===== Sub-projects ===== | |
- | ==== sub-projects ==== | + | |
There are some sub-projects or additional features, that some developers have expressed interest in, for | There are some sub-projects or additional features, that some developers have expressed interest in, for | ||
the kselftest system. Below is a bullet list for tracking the status of these different sub-projects: | the kselftest system. Below is a bullet list for tracking the status of these different sub-projects: | ||
(In parenthesis are some people who have expressed interest in this sub-project or feature) If a link is present then there's a sub-page to discuss that project. | (In parenthesis are some people who have expressed interest in this sub-project or feature) If a link is present then there's a sub-page to discuss that project. | ||
- | * standardize the test output format (Grant Likely) | + | * [[standardize the test output]] format (Grant Likely) |
* [[support cross-compilation]] (Tim Bird, Grant Likely, and others) | * [[support cross-compilation]] (Tim Bird, Grant Likely, and others) | ||
* support local execution of tests in a virtualized environment (kvm, virtualbox, qemu) | * support local execution of tests in a virtualized environment (kvm, virtualbox, qemu) | ||
Line 60: | Line 62: | ||
* cross-compilation (ie CROSS_COMPILE support) | * cross-compilation (ie CROSS_COMPILE support) | ||
- | ===== some desired tests ===== | + | ==== Some desired tests ==== |
Initially, Shuah started collecting existing unit tests from other places both inside and outside the kernel | Initially, Shuah started collecting existing unit tests from other places both inside and outside the kernel | ||
source tree. Here are some tests that have been discussed or requested: | source tree. Here are some tests that have been discussed or requested: | ||
Line 68: | Line 69: | ||
* basic boot test (get to login prompt) | * basic boot test (get to login prompt) | ||
+ | ===== Resources ===== | ||
+ | * git tree | ||
+ | * <code>git://git.kernel.org/pub/scm/shuah/linux-kselftest</code> | ||
+ | * mailing list: linux-kselftest@vger.kernel.org | ||
+ | * lkml should be copied (as for other kernel sub-system work) | ||