Skip to content

LTP 20160510

Compare
Choose a tag to compare
@metan-ucw metan-ucw released this 10 May 12:32
· 7324 commits to master since this release

Since the last release 169 patches by 24 authors were merged.

Notable changes are:

  • New C library test API that significantly eases test writing

    This is the end result of last few years of cleanups and fixes. Most of the
    common code has been moved to the library which both helps to avoid common
    mistakes and lets the programmer concentrate on test itself. It also fixed
    long standing problems with thread safety, simplified test result propagation
    from child processes, fixed problems with cleanup callback, etc. If you ever
    given up on writing a LTP testcase because the test API was incomplete and
    difficult to use you should really reconsider now.

    The old and new test API will coexistent for a while until all old testcases
    are converted, which will take quite some time. New test are written using
    the new API only.

    You can have a quick look at new/converted tests to get a feel for the new API:

    https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/syscalls/recvmsg/recvmsg02.c
    https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/syscalls/creat/creat06.c

    Or have a look at updated documentation at:

    https://github.com/linux-test-project/ltp/wiki/Test-Writing-Guidelines#22-writing-a-test-in-c

  • New syscall tests for:

    • request_key()
    • preadv()
    • pwritev(),
    • fcntl() + F_OFD_* locks
    • personality()
    • removexattr()
    • llistxattr()
    • epoll_pwait(),
    • epoll_wait()
    • open() + O_TMPFILE

    And regression tests for:

    • madvise() + MADV_WILLNEED
    • recvmsg() + MSG_PEEK
  • Rewritten network stress tests

  • New test for lsmod

  • Usual amount of fixes

    • fixed file corruptions with ltp-pan
    • added a few return value checks for fork() where the value is later passed
      to kill() resulting in call to kill(-1, ...) if fork() failed
    • a few more skipped test on Btrfs on unsupported/unimplemented functionality
    • fixed test result propagation in five fcntl testcases
    • much more...