ksummit.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Jason Cooper <jason@lakedaemon.net>
To: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: ksummit-discuss@lists.linuxfoundation.org
Subject: Re: [Ksummit-discuss] [CORE TOPIC] kernel testing standard
Date: Fri, 23 May 2014 09:32:00 -0400	[thread overview]
Message-ID: <20140523133200.GY8664@titan.lakedaemon.net> (raw)
In-Reply-To: <537F3551.2070104@hitachi.com>

Masami,

On Fri, May 23, 2014 at 08:47:29PM +0900, Masami Hiramatsu wrote:
> Issue:
> There are many ways to test the kernel but it's neither well documented
> nor standardized/organized.
> 
> As you may know, testing kernel is important on each phase of kernel
> life-cycle. For example, even at the designing phase, actual test-case
> shows us what the new feature/design does, how is will work, and how
> to use it. This can improve the quality of the discussion.
> 
> Through the previous discussion I realized there are many different methods/
> tools/functions for testing kernel, LTP, trinity, tools/testing/selftest,
> in-kernel selftest etc. Each has good points and bad points.

* automated boot testing (embedded platforms)
* runtime testing

A lot of development that we see is embedded platforms using
cross-compilers.  That makes a whole lot of tests impossible to run on
the host.  Especially when it deals with hardware interaction.  So
run-time testing definitely needs to be a part of the discussion.

The boot farms that Kevin and Olof run currently tests booting to a
command prompt.  We're catching a lot of regressions before they hit
mainline, which is great.  But I'd like to see how we can extend that.
And yes, I know those farms are saturated, and we need to bring
something else on line to do more functional testing,  Perhaps break up
the testing load:  boot-test linux-next, and runtime tests of the -rcX
tags and stable tags.

> So, I'd like to discuss how we can standardize them for each subsystem
> at this kernel summit.
> 
> My suggestion are,
> - Organizing existing in-tree kernel test frameworks (as "make test")
> - Documenting the standard testing method, including how to run,
>   how to add test-cases, and how to report.
> - Commenting standard testing for each subsystem, maybe by adding
>   UT: or TS: tags to MAINTAINERS, which describes the URL of
>   out-of-tree tests or the directory of the selftest.

 - classify testing into functional, performance, or stress
    - possibly security/fuzzing

> Note that I don't tend to change the ways to test for subsystems which
> already have own tests, but organize it for who wants to get involved in
> and/or to evaluate it. :-)

And make it clear what type of testing it is.  "Well, I ran make test"
on a patch affecting performance is no good if the test for that area is
purely functional.

On the stress-testing front, there's a great paper [1] on how to
stress-test software destined for deep space.  Definitely worth the
read.  And directly applicable to more than deep space satellites.

> I think we can strongly request developers to add test-cases for new features
> if we standardize the testing method.
> 
> Suggested participants: greg k.h., Li Zefan, test-tool maintainers and
>                        subsystem maintainers.

+ Fenguang Wu, Kevin Hilman, Olof Johansson

thx,

Jason.

[1] http://messenger.jhuapl.edu/the_mission/publications/Hill.2007.pdf

  reply	other threads:[~2014-05-23 13:32 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-23 11:47 Masami Hiramatsu
2014-05-23 13:32 ` Jason Cooper [this message]
2014-05-23 16:24   ` Olof Johansson
2014-05-23 16:35     ` Guenter Roeck
2014-05-23 16:36     ` Jason Cooper
2014-05-23 18:10     ` Masami Hiramatsu
2014-05-23 18:36       ` Jason Cooper
2014-05-23 18:06   ` Masami Hiramatsu
2014-05-23 18:32     ` Jason Cooper
2014-05-23 14:05 ` Justin M. Forbes
2014-05-23 16:04   ` Mark Brown
2014-05-24  0:30   ` Theodore Ts'o
2014-05-24  1:15     ` Guenter Roeck
2014-05-26 11:33     ` Masami Hiramatsu
2014-05-30 18:35       ` Steven Rostedt
2014-05-30 20:59         ` Kees Cook
2014-05-30 22:53         ` Theodore Ts'o
2014-06-04 13:51           ` Masami Hiramatsu
2014-05-26 17:08     ` Daniel Vetter
2014-05-26 18:21       ` Mark Brown
2014-05-28 15:37 ` Mel Gorman
2014-05-28 18:57   ` Greg KH
2014-05-30 12:07     ` Linus Walleij
2014-06-05  0:23       ` Greg KH
2014-06-05  6:54         ` Mel Gorman
2014-06-05  8:30           ` Geert Uytterhoeven
2014-06-05  8:44             ` chrubis
2014-06-05  8:53             ` Daniel Vetter
2014-06-05 11:17               ` Masami Hiramatsu
2014-06-05 11:58                 ` Daniel Vetter
2014-06-06  9:10                   ` Masami Hiramatsu
2014-06-05 14:10             ` James Bottomley
2014-06-06  9:17               ` Masami Hiramatsu
2014-06-09 14:44               ` chrubis
2014-06-09 17:54                 ` Michael Kerrisk (man-pages)
2014-06-05  8:39           ` chrubis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140523133200.GY8664@titan.lakedaemon.net \
    --to=jason@lakedaemon.net \
    --cc=ksummit-discuss@lists.linuxfoundation.org \
    --cc=masami.hiramatsu.pt@hitachi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox