LTP result: Difference between revisions
(→result) |
(→result) |
||
Line 37: | Line 37: | ||
===result=== | ===result=== | ||
Below table shows overall progress in LTP failures analysis for current milestone: | Below table shows overall progress in LTP failures analysis for current milestone: | ||
* total: the number of total test cases | * '''total''': the number of total test cases | ||
* | * '''failures''': the number of failures | ||
* '''audit''': the number of audited failures, which status could be: | |||
* audit: the number of audited failures, which status could be: | |||
** fixed: the number of fixed failures | ** fixed: the number of fixed failures | ||
** LTP: native failures | ** LTP: native failures | ||
Line 46: | Line 45: | ||
** pending: the analysis is done, but pending for solution | ** pending: the analysis is done, but pending for solution | ||
** duplicated: the number of failures same as other platforms which have been analyzed already | ** duplicated: the number of failures same as other platforms which have been analyzed already | ||
* '''similarity''': most failures are common to all targets. Qemux86 is chosen as the base, which is the target spent with most time | |||
(click the title like "qemux86" to check detail data for that target | (click the title like "qemux86" to check detail data for that target |
Revision as of 06:37, 30 January 2011
Introduction
Linux Test Project (LTP) is an open source project with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. (http://ltp.sourceforge.net)
Unlike typical desktop/server distributions, embedded linux distribution is highly customized for a specific purpose. It's not unusual to observe more failures in Yocto than in a typical desktop Linux distro like Ubuntu, etc. So the major purposes of this work are:
- to understand the reasons for existing LTP failures. If the cause is from a specific package itself, go to fix it. Or else if the error simply come from the fact that a given package doesn't exist in current profile, add the explanation here
- to track LTP test results cross Yocto releases, and ensure a declining error number for same profile
- to be the reference if Yocto users want to get a base picture
There is one bugzilla entry related: http://bugzilla.pokylinux.org/show_bug.cgi?id=169
Overall trend
Overall trend tends to track the change of LTP test results along with Yocto's progress. Previous data in 0.9 is not complete and not consistent configured on all targets. So we start from 1.0-M2 as the starting point.
In below table we list total LTP failures for each architectures in each milestone: (now this wiki doesn't allow upload files. So for detail logs please refer to earlier bug link)
Milestone | qemux86 | qemu-x86_64 | qemuppc | qemuarm | qemumips | atom-pc | blacksand | beagleboard | routerstation |
1.0-M2 | 34 | 32 | 34 | 37 | 37 | 33 | 29 | 35 | 145 (*) |
*: routerstation has kernel config issues. See later for detail.
general tips:
- Yocto links /tmp to /var/volatiles/tmp which is dynamically created at each boot. This causes one issue to LTP test. /var is normally not writable to non-root users, while LTP does run some test cases under non-root accounts. This causes considerable failures (~60 in qemux86) when creating temporary contents under /tmp. The workaround to this issue is to use "-d newtmpdir" when running LTP, where newtmpdir is created with full write permissions to all users.
- There's a puzzle which profile should be chosen as the test target. Now SDK is chosen because same image can work on both qemu and real hardware. LSB profile provides better result which is more desktop like but now this profile doesn't run on real hardware and lack of some development packages like gcc. For now we just keep this choice, and introduce a Not-A-Bug type to mark failures which are caused simply because related packages are missing
Current Milestone (1.0/M2)
environment
LTP version: ltp-full-20101031.bz2
Profile: poky-image-sdk
run command: ../runltp -p -q -l result-M2-20101218.log -C result-M2-20101218.fail -d /opt/tmp
result
Below table shows overall progress in LTP failures analysis for current milestone:
- total: the number of total test cases
- failures: the number of failures
- audit: the number of audited failures, which status could be:
- fixed: the number of fixed failures
- LTP: native failures
- NAB: Not-A-Bug, the number of the failures which come from miss of some packages due to the profile definition
- pending: the analysis is done, but pending for solution
- duplicated: the number of failures same as other platforms which have been analyzed already
- similarity: most failures are common to all targets. Qemux86 is chosen as the base, which is the target spent with most time
(click the title like "qemux86" to check detail data for that target
Status | Qemux86 | Qemux86_64 | Qemuppc | Qemuarm | Qemumips | netbook | blacksand | beagleboard | routerstation |
total | 1072 | n/a | 1071 | 1071 | 1081 | n/a | n/a | 1174 | 1182 |
failures | 34 | 32 | 34 | 37 | 37 | 33 | 29 | 35 | 145 (*) |
audit | 34(100%) | 32(100%) | 30(88%) | 37(100%) | 33(89%) | 33(100%) | 29(100%) | 34(97%) | 0(0%) |
fixed | 6 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
NAB | 26 | 1 | 0 | 4 | 0 | 0 | 2 | 0 | 0 |
LTP | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Duplicated | 0 | 29 | 30 | 29 | 29 | 33 | 29 | 34 | 0 |
pending | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 |
similarity | 100% | 90% | 88% | 78% | 78% | 90% | 96% | 85% | 19% |
* on routerstation kernel may not be configured correctly. Lots of new failures are related to IPC, which may come from lacking of some kernel options
configuration
Below table includes which LTP categories are included in the measurement:
Milestone | qemu targets | real hardware |
1.0-M2 |
syscalls mm ipc sched math nptl pty admin_tools command |
syscalls fs fsx dio io mm ipc sched math nptl pty admin_tools timers commands |
Previous milestone
a placeholder. Once we reach a new milestone, the data under "current milestone" will be moved here.