Linux Test Project Ltp Versions Save

Linux Test Project (mailing list: https://lists.linux.it/listinfo/ltp)

20210121

3 years ago

Since the last release 303 patches by 35 authors were merged.

NOTABLE CHANGES

  • New tests

    • finit_module()
    • init_module()
    • delete_module()
    • semctl09 for SEM_STAT_ANY flag
    • msgctl06 for MSG_STAT_ANY flag
    • shmctl04 for SHM_STAT_ANY flag
    • sendmmsg() failure tests
    • recvmmsg() failure tests
    • open_by_handle_at()
    • name_to_handle_at()
    • ptrace11 to check if we can trace PID 1
    • select04 failure tests
    • select04 to check if rfds/wfds flags are clered on empty/full fd
  • New regression tests

    • inotify10 added test for fecc4559780d (fsnotify: fix events reported to watching parent and child)
    • fanotify09 for 7372e79c9eb9 (fanotify: fix logic of reporting name info with watched parent)
    • ptrace10 bd14406b78e6 (perf/hw_breakpoint: Modify breakpoint even if the new attr has disabled set)
  • Increased coverage

    • fanotify09 added case with FAN_CLOSE_NOWRITE on a sibling non-dir child
  • Removed tests

    • sync01, sync02 these tests were useless so there was no point in keeping them
  • The metadata extraction patchset was merged. LTP now produces metadata.json with a metadata for new library testcases and also html test catalogue build from the extracted metadata.

    https://github.com/linux-test-project/ltp/blob/master/docparse/README.md

  • Kernel .config parser was rewritten to support proper boolean expressions

  • LTP now requires pkg-config > 0.23 (working version 0.24 was released in 2010)

  • Error handling in test library (mostly SAFE_MACROS()) was unified

  • High level test library overview was written: https://github.com/linux-test-project/ltp/blob/master/lib/README.md

  • IMA/EVM

    • fixed ima_tpm.sh for TPM 2.0 and for TPM 1.2 on kernel >= v5.8 (commit 6f1a1d103b48)
    • rewrote ima_boot_aggregate.c to new API
  • 16 testcases were converted to the new test library

  • The usual amount of fixes and cleanups.

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

  • New tests

    • wireguard tests
  • Fixes

    • fix various false-positive failures in tests using tst_netload (tests in net.features and net_stress.ipsec_* runtest files)
    • if-mtu-change.sh on s390x: fix max packet size for IPv4
  • Compatibility fixes:

    • ping and traceroute from BusyBox
    • MUSL (netstress)
    • traceroute6 from iputils
    • various other fixes and cleanup
  • Rewrite into new API

    • host01
    • netstat01.sh

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20200930..

88  Petr Vorel <[email protected]>
52  Cyril Hrubis <[email protected]>
25  Martin Doucha <[email protected]>
19  Yang Xu <[email protected]>
18  Viresh Kumar <[email protected]>
10  Xiao Yang <[email protected]>
 8  Alexey Kodanev <[email protected]>
 8  Amir Goldstein <[email protected]>
 8  Feiyu Zhu <[email protected]>
 8  Kory Maincent <[email protected]>
 7  Radoslav Kolev <[email protected]>
 5  Richard Palethorpe <[email protected]>
 4  Cixi Geng <[email protected]>
 4  Krzysztof Dynowski <[email protected]>
 4  Li Wang <[email protected]>
 4  Po-Hsu Lin <[email protected]>
 4  Joerg Vehlow <[email protected]>
 3  Alexander Egorenkov <[email protected]>
 2  Khem Raj <[email protected]>
 2  Li Zhijian <[email protected]>
 2  Pengfei Xu <[email protected]>
 2  Tree Davies <[email protected]>
 2  Yang Xu <[email protected]>
 2  Bogdan Lezhepekov <[email protected]>
 2  Johannes Nixdorf <[email protected]>
 1  Alexander Egorenkov <[email protected]>
 1  Deepak Rawat <[email protected]>
 1  Filip Bozuta <[email protected]>
 1  Jan Stancek <[email protected]>
 1  Peter Bee <[email protected]>
 1  Petr Cervinka via ltp <[email protected]>
 1  Punit Agrawal <[email protected]>
 1  Radoslav Kolev via ltp <[email protected]>
 1  Xinpeng Liu <[email protected]>
 1  bhargavdas <[email protected]>

And also thanks to patch reviewers:

git log 20200930.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r

114 Cyril Hrubis <[email protected]>
 58 Petr Vorel <[email protected]>
 51 Li Wang <[email protected]>
 13 Yang Xu <[email protected]>
 11 Amir Goldstein <[email protected]>
 10 Alexey Kodanev <[email protected]>
  9 Jan Stancek <[email protected]>
  5 Xiao Yang <[email protected]>
  5 Jan Kara <[email protected]>
  3 Xiao Yang <[email protected]>
  5 Richard Palethorpe <[email protected]>
  3 Martin Doucha <[email protected]>
  2 Mimi Zohar <[email protected]>
  1 Kory Maincent <[email protected]>
  1 Joerg Vehlow <[email protected]>

20200930

3 years ago

Since the last release 357 patches by 38 authors were merged.

NOTABLE CHANGES

  • New tests

    • mmap17 for MAP_FIXED_NOREPLACE
    • semctl08 to verify the _time_high fields
    • shmctl06 to verify the _time_high fields
    • msgctl05 to verify the _time_high fields
    • clock_gettime04 to check consistency during successive timer readings
    • mincore03 test for anonymous mappings
    • io_uring01 basic test for asynchronous read()
    • ioctl09 test for BLKRRPART
    • mincore04 test for pages faulted in child
    • clock_settime03 test if timers works fine when clocks overflows 32bit timestamp
    • msgget04 for /proc/sys/kernel/msg_next_id
    • msgget05 for /proc/sys/kernel/msg_next_id
    • send02 for send() with MSG_MORE flag
    • msgrcv03 for MSG_COPY flag
    • msgrcv07 for MSG_COPY flag
    • fcntl38 for F_SETSIG and F_NOTIFY
    • shmctl03 for IPC_INFO flag
    • shmctl07 for SHM_LOCK and SHM_UNLOCK flags
    • shmctl08 for IPC_SET flag
    • mmap18 for MAP_GROWSDOWN flag
    • ima_keys.sh, ima_kexec.sh new IMA tests + examples of required policies
  • New regression tests

    • setsockopt07 race condition between packet_set_ring() and tp_reserve() aka CVE-2017-1000111
    • fanotify10 for 2f02fd3fa13e (fanotify: fix ignore mask logic for events on child and on dir)
    • thp04 Huge Dirty Cow aka CVE-2017-1000405
    • pty05 race between flush_tx_queue() and n_hdlc_send_frames() aka CVE-2017-2636
    • adjtimex03 4-byte kernel data leak via adjtimex CVE-2018-11508
    • af_alg07 use-after-free in sockfs_setattr() aka CVE-2019-8912
    • bpf_prog04 bug in 32bit eBFP verifier aka CVE-2018-18445
    • timer_settime03 overflow of posix timer overrun counter aka CVE-2018-12896
  • Increased coverage

    • ioctl_loop01 added LO_FLAGS_AUTOCLEAR flag coverage
    • timer_gettime01 added timer_gettime64() coverage
    • timer_settime{01,02} added timer_settime64() coverage
    • timerfd{01,04} added timerfd_gettime64() coverage
    • timerfd_gettime01 added timerfd_gettime64() coverage
    • timerfd_settime{01,02} added timerfd_gettime64() coverage
    • sched_rr_get_interval{01,02,03} added sched_rr_get_interval_time64() coverage
    • sched_rr_get_interval01 checks the return value against /proc/sys/kernel/sched_rr_timeslice_ms
    • io_pgetevents{01,02} added io_pgetevents_time64() coverage
    • ioctl_loop02 added LOOP_CONFIGURE test for LO_FLAGS_READ_ONLY
    • pidfd_open01 added check for CLOEXEC handling
    • rt_sigtimedwait01 added rt_sigtimedwait_time64() coverage
    • futex_cmp_requeue{01,02} added futex_time64() coverage
    • futex_wait{01,02,03,04} added futex_time64() coverage
    • futex_wait_bitset01 added futex_time64() coverage
    • mq_timedreceive01 added mq_timedreceive64() coverage
    • mq_timedsend01 added mq_timedsend64() coverage
    • sendmmsg01 added sys_recvmmsg64() coverage
    • ppoll01 added ppoll_time64 coverage
    • ioctl_loop06 added LOOP_CONFIGURE test for block_size
    • select04 added pselect6_time64() coverage
    • utimensat01 added utimensat_time64() coverage
    • msgsnd01 added check for msg_lspid and msg_stime
    • msgrcv01 added check for msg_lrpid and msg_rtime
    • msgrcv07 added more msgtyp tests
    • semop{01,02,03} added semtimedop() and semtimedop_time64() coverage
    • fanotify{14,16} added FAN_REPORT_DFID_NAME and FAN_REPORT_* coverage
    • fanotify09 added cases with subdirectory marks
    • fanotify10 added cets for FAN_REPORT_NAME and ignore mask
    • ioctl_loop07 added LOOP_CONFIGURE test for lo_sizelimit
  • As you can see this release got the rest of the the 64bit timestamp testcases, 64bit timestamp syscalls should be reasonably covered now

  • The quickhit runtest file was removed and replaced for quick integration tests with smoketest runtest file

  • Additional 26 tests were converted to the new test library, significant part of these were cleaned up and rewritten SystemV IPC testcases

  • LTP now includes VDSO parser and explicitly tests timer VDSO functions

  • The backing files for a loop devices are now created by fallocate() if possible, which speeds up loop device based tests quite a bit

  • The build system was tweaked to produce much cleaner output the verbose output could be enabled by setting an environment variable V=1

  • The usual amount of fixes and cleanups.

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

  • remove RSH support (for legacy tests use SSH by default in $LTP_RSH)

  • removed rsh, rcp, rlogin tests

  • NFS: detect disabled UDP, expect it being disabled on v5.6+ (NFS_DISABLE_UDP_SUPPORT is default y)

  • TST_NET_RHOST_RUN_DEBUG=1 enables debugging

  • various fixes and updated docs

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20200515..

70  Petr Vorel <[email protected]>
66  Viresh Kumar <[email protected]>
37  Cyril Hrubis <[email protected]>
35  Yang Xu <[email protected]>
33  Martin Doucha <[email protected]>
19  Li Wang <[email protected]>
13  Jan Stancek <[email protected]>
11  Amir Goldstein <[email protected]>
10  Xiao Yang <[email protected]>
 6  Richard Palethorpe <[email protected]>
 5  Alexey Kodanev <[email protected]>
 5  Feiyu Zhu <[email protected]>
 4  Filip Bozuta <[email protected]>
 4  Lachlan Sneff <[email protected]>
 4  Po-Hsu Lin <[email protected]>
 3  Erico Nunes <[email protected]>
 3  Petr Vorel <[email protected]>
 3  Yixin Zhang <[email protected]>
 2  Eric Biggers <[email protected]>
 2  Khem Raj <[email protected]>
 2  Michal Kowalczyk <[email protected]>
 2  Shwetha Subramanian <[email protected]>
 2  Vikas Kumar <[email protected]>
 2  Yuan Gao <[email protected]>
 1  Bird, Tim <[email protected]>
 1  Fabrice Fontaine <[email protected]>
 1  Harish <[email protected]>
 1  He Zhe <[email protected]>
 1  Kushal Chand <[email protected]>
 1  Nirav Parmar <[email protected]>
 1  Qais Yousef <[email protected]>
 1  Qian Cai <[email protected]>
 1  Stanislav Kholmanskikh <[email protected]>
 1  Tree Davies <[email protected]>
 1  Vishwajith-K <[email protected]>
 1  Vitaly Chikunov <[email protected]>
 1  aidengao <[email protected]>
 1  pravin <[email protected]>

And also thanks to patch reviewers:

git log 20200515.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r

136 Cyril Hrubis <[email protected]>
 72 Petr Vorel <[email protected]>
 48 Li Wang <[email protected]>
 22 Jan Stancek <[email protected]>
 11 Xiao Yang <[email protected]>
  9 Yang Xu <[email protected]>
  9 Alexey Kodanev <[email protected]>
  8 Martin Doucha <[email protected]>
  7 Mimi Zohar <[email protected]>
  5 Vijay Kumar B. <[email protected]>
  4 Viresh Kumar <[email protected]>
  4 Lakshmi Ramasubramanian <[email protected]>
  2 Tim Bird <[email protected]>
  2 Petr Vorel <[email protected]>
  2 Arnd Bergmann <[email protected]>
  2 Amir Goldstein <[email protected]>
  1 Richard Palethorpe <[email protected]>
  1 Jan Kara <[email protected]>
  1 Christian Brauner <[email protected]>

20200515

4 years ago

Since the last release 327 patches by 26 authors were merged.

NOTABLE CHANGES

  • New tests

    • fanotify16: FAN_MODIFY_DIR test
    • ioctl_loop01: LO_FLAGS_AUTOCLEAR and LO_FLAGS_PARTSCAN test
    • ioctl_loop02: LO_FLAGS_READ_ONLY and LOOP_CHANGE_FD test
    • ioctl_loop03: LOOP_CHANGE_FD test with WR mode
    • ioctl_loop04: LOOP_SET_CAPACITY ioctl test
    • ioctl_loop05: LOOP_SET_DIRECT_IO ioctl test
    • ioctl_loop06: LOOP_SET_BLOCK_SIZE error test
    • ioctl_loop07: LOOP_SET/GET_STATUS64 sizelimit field test
    • pipe2_02: test for pipe2 O_CLOEXEC flag
    • pipe2_04: test for pipe2 with/without O_NONBLOCK mode
    • timerfd04: time namespace test
    • timens01: time namespace test
    • clock_gettime03: time namespace test
    • clock_nanosleep03: time namespace test
    • sysinfo03: time namespace test
    • clone301, clone301: clone3() syscall tests
    • bind04: Connection tests for stream-oriented sockets (SOCK_STREAM and SOCK_SEQPACKET)
    • bind05: Connection tests for datagram-oriented sockets (SOCK_DGRAM)
    • fcntl37: add error test for fcntl with F_SETPIPE_SZ
    • openat201, openat202, openat203: openat2() syscall tests
    • open_tree01, open_tree02: open_tree() syscall tests
    • fspick01, fspick02: fspick() syscall tests
    • move_mount01, move_mount02: move_mount() syscall tests
    • fsmount01, fsmount02: fsmount() syscall tests
    • fsconfig01, fsconfig02: fsconfig() syscall tests
    • fsopen01, fsopen02: fsopen() syscall tests
    • pty04: Test data transmission with SLIP line discipline
    • fallocate06: test for misaligned fallocate()
    • io_pgetevents01, io_pgetevents02: io_pgetevents() syscall tests
    • pidfd_open01, pidfd_open02, pidfd_open03: pidfd_open() syscall tests
    • vmsplice04: vmsplice() test with SPLICE_F_NONBLOCK
    • pipe12: add new test for pipe when write bytes > pipe size
  • New regression tests

    • pty04: Added SLCAN ldisc and check for CVE-2020-11494
    • setsockopt05: Test for CVE-2017-1000112
    • ptrace09: Test for CVE-2018-8897
    • snd_seq01: Test for CVE-2018-7566
    • bind06: Test for CVE-2018-18559
    • ptrace08: Test for CVE-2018-1000199
    • ioctl_sg01: Test for CVE-2018-1000204
    • sendmsg03: Test for CVE-2017-17712
    • timerfd_settime02: Test for CVE-2017-10661
    • connect02: Test for CVE 2018-9568 and also for setsockopt(IP_ADDRFORM) kernel bug (82c9ae440857 ipv6: fix restrict IPV6_ADDRFORM operation)
    • fanotify15: Add a test case for inode marks (f367a62a7cad fanotify: merge duplicate events on parent and child)
    • fanotify09: Check merging of events on directories (55bf882c7f13 fanotify: fix merging marks masks with FAN_ONDIR)
    • add_key05: add maxbytes/maxkeys test under unprivileged user (a08bf91ce28e "KEYS: allow reaching the keys quotas exactly")
    • pipe13: test for pipe to wake up all readers (6551d5c56eb0 "pipe: make sure to wake up everybody when the last reader/writer closes")
    • quotactl07: test for Q_XQTUOTARM (3dd4d40b4208 "xfs: Sanity check flags of Q_XQUOTARM call")
    • pty03: test for slip/slcan data race (0ace17d568241 "can, slip: Protect tty->disc_data in write_wakeup and close with RCU")
  • Increased coverage

    • readv01: new test cases added to the test
    • add_key02: add the "big_key" key type
  • First half of time64 tests for 64bit timer syscalls has landed in this relese, second half is going to be part of the next one

  • Additional 12 tests were converted to the new test library

  • Removed tests

    • epoll2: these depended on Portable Coroutine Library and were not even compiled by default for a long time
  • Fixes for gcc-10 that enables -fno-common by default

  • LTP now supports ARC CPUs

  • Skip oversleep checks in timer tests under VM

  • The usual amount of fixes and cleanups.

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

  • New netlink based route change tests

  • Fixes

    • nfs: detect disabled UDP
    • rpc: cleanup unused tests
    • detect libtirpc with pkg-config
  • Rewrite to new API

    • bind02, socketcall0[2-4], test_1_to_1_initmsg_connect (SCTP)
    • rpcinfo01.sh, rpc01.sh, sendfile01.sh, xinetd_tests.sh

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20200120.. 105 Petr Vorel [email protected] 49 Yang Xu [email protected] 38 Viresh Kumar [email protected] 35 Martin Doucha [email protected] 33 Cyril Hrubis [email protected] 11 Richard Palethorpe [email protected] 10 Jan Stancek [email protected] 6 Li Wang [email protected] 6 Petr Vorel [email protected] 5 Amir Goldstein [email protected] 4 Jorik Cronenberg [email protected] 4 Zou Wei [email protected] 3 Joerg Vehlow [email protected] 3 Po-Hsu Lin [email protected] 2 Alexey Kodanev [email protected] 2 Jozef Pupava [email protected] 2 Xiao Yang [email protected] 1 Anibal Limon [email protected] 1 Chen Li [email protected] 1 Jozef Pupava [email protected] 1 Khem Raj [email protected] 1 Ronald Monthero [email protected] 1 Sean T Allen [email protected] 1 Vikas Kumar [email protected] 1 Vineet Gupta [email protected] 1 Zorro Lang [email protected]

And also thanks to patch reviewers:

git log 20200120.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r 137 Cyril Hrubis [email protected] 62 Petr Vorel [email protected] 56 Li Wang [email protected] 26 Jan Stancek [email protected] 17 Yang Xu [email protected] 12 Alexey Kodanev [email protected] 8 Xiao Yang [email protected] 4 Martin Doucha [email protected] 4 Jan Kara [email protected] 3 Richard Palethorpe [email protected] 3 Matthew Bobrowski [email protected] 2 Xiao Yang [email protected] 2 Viresh Kumar [email protected] 1 Yang Xu [email protected] 1 Desnes A. Nunes do Rosario [email protected]

20200120

4 years ago

Since the last release 195 patches by 31 authors were merged.

NOTABLE CHANGES

  • New tests

    • vmsplice03 (splicing pipe to user memory)
    • prctl08, prctl09 (PR_{SET,GET}_TIMERSLACK)
  • New regression tests

    • bpf_prog03
  • Increased coverage

    • quotactl tests were rewritten and coverage was increased
  • Additional 19 tests were converted to the new test library

  • Removed tests

  • Our Travis now includes native ppc64le and s390x builds

  • Improved musl support, build with musl in Travis CI using Alpine Linux (broken tests are documented in Travis build script travis/alpine.sh)

  • Regression tests now print possibly missing kernel commits:

    --------------------------------------------------------------------------
    snd_timer01.c:134: FAIL: kernel seems vulnerable

    HINT: You _MAY_ be missing kernel fixes, see:

    https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d11662f4f798
    https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ba3021b2c79b

    HINT: You _MAY_ be vulnerable to CVE(s), see:

    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-1000380

    Summary:
    passed   0
    failed   1
    skipped  0
    warnings 0
    --------------------------------------------------------------------------
  • The usual amount of fixes and cleanups.

METADATA EXTRACTION & TEST CATALOGUE

There is an ongoing experiment that attempts to extract metadata from the testcases, we also have a proof of concept web page that renders the json metadata into a browseable test documentation. There is not much there yet, but we are hoping, among other things, to build a nice, searchable and browseable test catalogue based on these efforts.

https://github.com/metan-ucw/ltp/tree/master/docparse http://metan.ucw.cz/outgoing/metadata.html http://metan.ucw.cz/outgoing/metadata.html?test=abort01 http://metan.ucw.cz/outgoing/metadata.html?test=pcrypt_aead01

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

  • iptables: add new test for iptables-translate and nft, add IPv6 support
  • route: rewrite route change destination, gateway and interface tests into new API

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20190930.. 45 Petr Vorel [email protected] 22 Jan Stancek [email protected] 22 Yang Xu [email protected] 13 Cyril Hrubis [email protected] 13 Petr Vorel [email protected] 11 Li Wang [email protected] 10 Joerg Vehlow [email protected] 10 Martin Doucha [email protected] 7 Alexey Kodanev [email protected] 6 Clemens Famulla-Conrad [email protected] 5 Xiao Yang [email protected] 3 Feiyu Zhu [email protected] 2 Jorik Cronenberg [email protected] 2 Pengfei Xu [email protected] 2 Ping Fang [email protected] 2 Richard Palethorpe [email protected] 1 Cai Zhenglong [email protected] 1 Dylan Chung [email protected] 1 Eric Lin [email protected] 1 Fabrice Fontaine [email protected] 1 He Zhe [email protected] 1 Ivan Hu [email protected] 1 Ma Feng [email protected] 1 Mathias Fiedler [email protected] 1 Rachel Sibley [email protected] 1 Song Jian [email protected] 1 Sultan Alsawaf [email protected] 1 Xiang Li [email protected] 1 Yi Zhao [email protected] 1 Yongxin Liu [email protected] 1 Zou Wei [email protected]

git log 20190930.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r 76 Cyril Hrubis [email protected] 46 Petr Vorel [email protected] 28 Li Wang [email protected] 19 Jan Stancek [email protected] 9 Alexey Kodanev [email protected] 5 Clemens Famulla-Conrad [email protected] 4 Richard Palethorpe [email protected] 3 Yang Xu [email protected] 1 Thadeu Lima de Souza Cascardo [email protected] 1 Sumit Garg [email protected] 1 Steve Dickson [email protected] 1 Petr Vorel [email protected] 1 Joerg Vehlow [email protected] 1 Amir Goldstein [email protected]

20190930

4 years ago

Since the last release 267 patches by 41 authors were merged.

NOTABLE CHANGES

  • New tests

    • Basic eBPF map and program load tests
    • Netlink uevent socket tests
    • Basic ioprio() tests
    • Basic sendmmsg() test
    • mbind() tests
    • Memory protection (pkey) tests
    • prctl() with PR_CAP_AMBIENT
    • prctl() with PR_{GET,SET}_NO_NEW_PRIVS
    • prctl() with PR_{SET,GET}_NAME
    • prctl() with PR_{SET,GET}_SECCOMP
    • futext_cmp_requeue() tests
    • fanotify FAN_REPORT_FID tests
    • fanotify overlayfs tests
    • pidfd_send_signal() tests
    • IMA overlay tests
    • acct() tests
    • preadv2() RWF_NOWAIT tests
  • New tests variants for

    • clock_getres()
  • New regression tests

    • bpf_prog02: regression test for 3612af783cf52c (bpf: fix sanitation rewrite in case of non-pointers)
    • timer_create() aka CVE-2017-18344
    • alsa timer race aka CVE-2017-1000380
    • accept02 aka CVE-2017-8890
    • setsockopt04 aka CVE-2016-9793
    • move_pages12: regression tests for: e66f17ff7177 (mm/hugetlb: take page table lock in follow_huge_pmd()) c9d398fa2378 (mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd()) 4643d67e8cb0 (hugetlbfs: fix hugetlb page migration/fault race causing SIGBUS)
    • crypto_user02: regression test for 21d4120ec6f5 ("crypto: user - prevent operating on larval algorithms")
    • sysctl02: regression test for 32a5ad9c2285 ("sysctl: handle overflow for file-max")
  • Increased coverage

    • copy_file_range()
      • tests for cross device copy
      • tests for invalid files (swapfile, pipe, ...)
    • intel PT tests
    • sync_file_range()
      • added partial range sync
  • Added syscall tables for MIPS

  • Guarded buffers, which are pages followed by a PROT_NONE and preceeded by a canary were introduced and 8 tests were changed to make use of the new feature. Also newly implemented tests are using the same buffers as well.

  • Additional 36 tests were converted to the new test library

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

  • New net features:

    • introduce TST_GET_UNUSED_PORT() macro into C API
  • Rewritten to new API:

    • tst_get_unused_port
    • bind01
    • setdomainname
    • sethostname
  • The usuall amount of fixes and cleanups.

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20190517..

68  Petr Vorel <[email protected]>
45  Cyril Hrubis <[email protected]>
27  Yang Xu <[email protected]>
19  Christian Amann <[email protected]>
17  Jan Stancek <[email protected]>
 9  Richard Palethorpe <[email protected]>
 8  Li Wang <[email protected]>
 7  Murphy Zhou <[email protected]>
 6  Jinhui huang <[email protected]>
 5  Amir Goldstein <[email protected]>
 5  Po-Hsu Lin <[email protected]>
 5  Sandeep Patil <[email protected]>
 5  Yixin Zhang <[email protected]>
 4  Joerg Vehlow <[email protected]>
 4  Xiao Yang <[email protected]>
 3  He Zhe <[email protected]>
 3  Matthew Bobrowski <[email protected]>
 2  Caspar Zhang <[email protected]>
 2  Eric Biggers <[email protected]>
 2  Steve Muckle <[email protected]>
 1  Alexey Kodanev <[email protected]>
 1  Ammy Yi <[email protected]>
 1  Hongzhi.Song <[email protected]>
 1  Khem Raj <[email protected]>
 1  Linus Walleij <[email protected]>
 1  Martin Doucha <[email protected]>
 1  Mathias Fiedler <[email protected]>
 1  Michael Moese <[email protected]>
 1  Murphy Zhou <[email protected]>
 1  Petr Cervinka <[email protected]>
 1  Ping Fang <[email protected]>
 1  Piotr Gawel <[email protected]>
 1  Steven Price <[email protected]>
 1  Sultan Alsawaf <[email protected]>
 1  Sumit Garg <[email protected]>
 1  Thadeu Lima de Souza Cascardo <[email protected]>
 1  Tobias Jordan <[email protected]>
 1  Wu,Haiqiang <[email protected]>
 1  Yann Sionneau <[email protected]>
 1  Yi Zhao <[email protected]>
 1  Yu,Siliang <[email protected]>

And also thanks to patch reviewers:

git log 20190517.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r

 94 Cyril Hrubis <[email protected]>
 42 Li Wang <[email protected]>
 16 Amir Goldstein <[email protected]>
 13 Jan Stancek <[email protected]>
 11 Richard Palethorpe <[email protected]>
  7 Petr Vorel <[email protected]>
  6 Xiao Yang <[email protected]>
  6 Clemens Famulla-Conrad <[email protected]>
  5 Yang Xu <[email protected]>
  4 Mimi Zohar <[email protected]>
  4 Alexey Kodanev <[email protected]>
  3 Sumit Garg <[email protected]>
  2 Murphy Zhou <[email protected]>
  2 Ignaz Forster <[email protected]>
  1 Sandeep Patil <[email protected]>
  1 Richard Palethorpe <[email protected]>
  1 Enji Cooper <[email protected]>
  1 Christian Amann <[email protected]>

20190517

5 years ago

Since the last release 293 patches by 49 authors were merged.

NOTABLE CHANGES

  • New tests

    • ioctl_ns{01-07}: Tests for NS_GET_* ioctls
    • clock_adjtim{01,02}: New tests
    • userfaultfd01: New test
    • ioctl08: Test for FIDEDUPERANGE on Btrfs
    • sigpending02: New test for sigpending/rt_sigpending
    • pivot_root01: New test
    • tgkill{01-03}: New tests
    • set_mempolicy{01-04}: New tests
    • rt_tgsigqueueinfo01: New test
    • binfmt_misc02.sh: New functionality test
    • pwritev2{01-02}: New tests
    • rt_sigpending02: New test
    • fanotify12: New test for FAN_OPEN_EXEC event mask
    • clock_gettime{01,02}: New tests
    • fdatasync03: New test
    • fsync04: New test
    • sync03: New test
    • syncfs01: New test
    • setrlimit06: Add new test for RLIMIT_CPU
    • statx07: Add test for AT_STATX_DONT_SYNC and AT_STATX_FORCE_SYNC
    • clock_settime{01,02}: New tests
  • New regression tests

    • af_alg06: malformed authenc key 8f9c46934848
    • af_alg05: skcipher_walk error bug 8088d3dd4d7c
    • af_alg04: vmac race conditions bb2964810233
    • af_alg03: rfc7539 hash alg validation e57121d08c38
    • af_alg02: salsa20 empty message bug ecaaab564978 aka CVE-2017-17805
    • af_alg01: hmac nesting bug af3ff8045bbf aka CVE-2017-17806
    • binfmt_misc01.sh: 5cc41e099504 ("fs/binfmt_misc.c: do not allow offset overflow)
  • Increased coverage

    • fanotify01: add FAN_REPORT_FID test cases
    • fanotify10: increase test coverage to support FAN_OPEN_EXEC mask
    • fanotify03: add FAN_OPEN_EXEC_PERM
  • New test variants API

    • The LTP test library gained support for test variants, with that we can test family of similar syscalls (i.e. different select syscalls) in a single test.

    • stime: Test 3 variants

    • sigpending: Test 3 variants

    • select04: Test 4 variants

  • Various fixes for Android Bionic libc (both build and runtime) and musl libc are included in this release

  • Additional 22 tests were converted to the new test library

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

  • New testcases

    • ipsec: test also randomized message length
    • features: new checksum testcases
    • virt: add mode l3s in ipvlan test
    • netstress: support SO_REUSEPORT, MSG_ZEROCOPY
  • Various tests converted into new API

    • (arping01, broken_ip, clockdiff01, ip_tests.sh, ping0{1|0}, tracepath, traceroute)
  • Various small fixes and enhancements, most notable ones:

    • dhcp: correct prefix for expected IPv6 address)
    • lower down packet size to minimum, which still be high enough to require fragmentation. This is critical for performance tests, which compare virtual devices with the real ones.
    • netstress: various fixes to avoid false-positives
    • dhcp: AppArmor and SELinux fixes, fix paths for non-RHEL distros

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20190115..

40  Petr Vorel <[email protected]>
39  Enji Cooper <[email protected]>
28  Cyril Hrubis <[email protected]>
17  Alexey Kodanev <[email protected]>
15  Petr Vorel <[email protected]>
15  Xiao Yang <[email protected]>
14  Rafael David Tinoco <[email protected]>
12  Matthias Maennich <[email protected]>
11  Sumit Garg <[email protected]>
 9  Eric Biggers <[email protected]>
 7  Jan Stancek <[email protected]>
 7  Jinhui huang <[email protected]>
 7  Li Wang <[email protected]>
 7  Steve Muckle <[email protected]>
 6  Jia Zhang <[email protected]>
 6  Yang Xu <[email protected]>
 5  Matthew Bobrowski <[email protected]>
 4  Shile Zhang <[email protected]>
 3  Christian Amann <[email protected]>
 3  Cristian Marussi <[email protected]>
 3  Greg Hackmann <[email protected]>
 3  Sandeep Patil <[email protected]>
 2  Federico Bonfiglio <[email protected]>
 2  Jason Xing <[email protected]>
 2  Michael Holzheu <[email protected]>
 2  Paul Lawrence <[email protected]>
 2  Zhengwang Ruan <[email protected]>
 1  Alistair Strachan <[email protected]>
 1  Amir Goldstein <[email protected]>
 1  Balamuruhan S <[email protected]>
 1  Daniel Diaz <[email protected]>
 1  Daniel Mentz <[email protected]>
 1  Elif Aslan <[email protected]>
 1  Esteban Flores <[email protected]>
 1  Guangwen Feng <[email protected]>
 1  He Zhe <[email protected]>
 1  Jan Baier <[email protected]>
 1  Michael Holzheu <[email protected]>
 1  Pengfei Xu <[email protected]>
 1  Ramon Pantin <[email protected]>
 1  Richard Palethorpe <[email protected]>
 1  Roman Kalashnikov <[email protected]>
 1  Sandeep Patil <[email protected]>
 1  Saravana Kannan <[email protected]>
 1  Tommi Rantala <[email protected]>
 1  Vaishnavi <[email protected]>
 1  Xiao Liang <[email protected]>
 1  Yixin Zhang <[email protected]>
 1  supersojo <[email protected]>

And also thanks to patch reviewers:

git log 20190115.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r

 73 Cyril Hrubis <[email protected]>
 20 Petr Vorel <[email protected]>
 20 Jan Stancek <[email protected]>
 11 Xiao Yang <[email protected]>
 11 Alexey Kodanev <[email protected]>
  9 Steve Muckle <[email protected]>
  7 Li Wang <[email protected]>
  7 Amir Goldstein <[email protected]>
  5 Mimi Zohar <[email protected]>
  5 Enji Cooper <[email protected]>
  3 Sandeep Patil <[email protected]>
  2 Sumit Garg <[email protected]>
  1 Xiong Zhou <[email protected]>
  1 Sandeep Patil <[email protected]>
  1 Michael Holzheu <[email protected]>
  1 Hendrik Brueckner <[email protected]>
  1 Eric Biggers <[email protected]>
  1 Enji Cooper <[email protected]
  1 Cyril Hrubis <[email protected]>
  1 Cristian Marussi <[email protected]>
  1 Alessio Balsini <[email protected]>

20190115

5 years ago

Since the last release 246 patches by 40 authors were merged.

NOTABLE CHANGES

  • New tests

    • fanotify11 - test for FAN_REPORT_TID
    • fanotify01, fanotify03, fanotify10
      • added coverage for FAN_MARK_FILESYSTEM
    • fanotify03
      • added coverage for mountpoint mark
    • getrlimit03 - test if getrlimit syscalls return consistent data
    • increased coverage for readahead and posix_fadvise on overlayfs
    • execveat01 - functional tests
    • execveat02 - invalid inputs tests
    • statx06 - checks for correct statx timestamps
    • lremovexattr01 - functional tests
    • fremovexattr01 - functional tests
    • fremovexattr02 - invalid inputs tests
    • pt_test - Intel PT full trace test
    • membarier01 - functional tests
    • preadv201 - functional tests
    • preadv202 - invalid inputs tests
    • new open posix conformance tests for strchr, strcpy, strncpy,
  • New regression tests

    • crypto_user01 aka CVE-2018-19854 (previously known as CVE-2013-2547)
    • fanout01 aka CVE-2017-15649
    • fanotify09
      • added coverage for merging events on child subdir fixed in b469e7e47c8a "fanotify: fix handling of events on child sub-directory"
    • fanotify10 - test for mount ignore mask fixed in 9bdda4e9cf2d fsnotify: fix ignore mask logic in fsnotify()
    • getxattr05 fixed in 82c9a927bc5d ("getxattr: use correct xattr length")
  • Additional 37 tests were converted to the new test library; with that about 30% of the LTP syscall testcases have been converted so far

  • The travis build-testing is now done using docker ensuring that latest LTP git HEAD builds smoothly on major distributions and architectures

  • The fzsync library intended to trigger kernel races has been rewritten again, the code is simpler now and at the same time the probability to hit races has increased.

NOTABLE CHANGES IN NETWORK TESTS

brought to you by Petr Vorel

New features/tests:

  • tests for SIT tunnel
  • tests for MPLS labels
  • netstress: add support for SO_BINDTODEVICE
  • added tst_net_run() shell API function
  • nfs tests were rewritten to new API
  • various fixes in dhcp, ipsec, rpc and virt tests
  • removed ftp and ssh tests

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20180926.. 41 Petr Vorel [email protected] 28 Amir Goldstein [email protected] 25 Alexey Kodanev [email protected] 25 Xiao Yang [email protected] 16 Jan Stancek [email protected] 13 Cyril Hrubis [email protected] 8 Enji Cooper [email protected] 8 Stanislav Kholmanskikh [email protected] 7 Clemens Famulla-Conrad [email protected] 6 Cristian Marussi [email protected] 6 Greg Hackmann [email protected] 6 Rafael David Tinoco [email protected] 6 Richard Palethorpe [email protected] 6 Steve Muckle [email protected] 4 Jinhui huang [email protected] 4 Mandri, Padmashree [email protected] 4 Sandeep Patil [email protected] 3 Eric Biggers [email protected] 3 Yixin Zhang [email protected] 2 Jason Xing [email protected] 2 Li Wang [email protected] 2 Subash Ganesan [email protected] 1 Allen, John [email protected] 1 Ammy Yi [email protected] 1 Hongzhi.Song [email protected] 1 Kai Kang [email protected] 1 Keita Suzuki [email protected] 1 Kenneth Magic [email protected] 1 Khem Raj [email protected] 1 Lei Yang [email protected] 1 Masayoshi Mizuma [email protected] 1 Michael Moese [email protected] 1 Myungho Jung [email protected] 1 Po-Hsu Lin [email protected] 1 Shaoting Lei [email protected] 1 Sun Lianwen [email protected] 1 Thadeu Lima de Souza Cascardo [email protected] 1 Tommi Rantala [email protected] 1 nixiaoming [email protected] 1 yangj [email protected]

And also thanks to patch reviewers: git log 20180926.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r 86 Cyril Hrubis [email protected] 20 Petr Vorel [email protected] 13 Li Wang [email protected] 10 Jan Stancek [email protected] 7 Alexey Kodanev [email protected] 4 Xiao Yang [email protected] 3 Richard Palethorpe [email protected] 1 Steve Muckle [email protected] 1 Richard Palethorpe [email protected] 1 Jan Kara [email protected] 1 Amir Goldstein [email protected]

20180926

5 years ago

Since the last release 275 patches by 39 authors were merged.

NOTABLE CHANGES

  • New tests

    • statx tests for:
      • basic tests
      • invalid inputs
      • AT_EMPTY_PATH, AT_SYMLINK_NOFOLLOW
      • FS_* flags
      • STATX_ATTR_ENCRYPTED (on ext4)
      • more is on the way
    • mlock2
      • basic tests
      • invalid inputs
    • memfd_create
      • MFD_HUGETLB, MFD_HUGE_2MB, MFD_HUGE_1GB
    • fgetxattr
    • fsetxattr
    • prctl
      • PR_{SET,GET}_CHILD_SUBREAPER
    • madvise
      • MADV_WIPEONFORK, MADV_KEEPONFORK
  • New regression tests

    • mlock203 b155b4fde5bd mm: mlock: avoid increase mm->locked_vm on mlock() when already mlock2(,MLOCK_ONFAULT)
    • execveat 355139a8dba4 cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias()
    • pcrypt_aead01 aka CVE-2017-18075 d76c68109f37 crypto: pcrypt - fix freeing pcrypt instances
    • shmctl05 3f05317d9889 ipc/shm: fix use-after-free of shm file via remap_file_pages()
    • realpath01 aka cve-2018-1000001 fixed by glibc commit 52a713fdd0a3
    • inotify07 d90a10e2444b fsnotify: Fix fsnotify_mark_connector race
    • fanotify09 54a307ba8d3c fanotify: fix logic of events on child
    • pty02 966031f340185 n_tty: fix EXTPROC vs ICANON interaction with TIOCINQ (aka FIONREAD)
    • migrate_pages03 4b0ece6fa016 mm: migrate: fix remove_migration_pte() for ksm pages
  • msgctl IPC test were redesigned and rewritten

  • ~50 tests were cleaned up and rewritten to the new library API

  • Several network helper libraries and tests has been ported into new API (busy poll, DHCP, ipneigh, IPsec, iptables, SCTP, TCP fast open, virt, ...)

  • Many fixes all over the place
  • Removed code

    • pounder21 - broken and wasn't compiled by default for years
  • What didn't make it to this release

    • second rewrite and simplification of the fuzzy sync library and this time the user API is much easier to use
    • rewrite of the mempolicy NUMA tests that should finally solve all race conditions and random failures

TODO LIST AND ISSUE TRACKER

As noted in the previous release we started to maintain a LTP TODO list in the form GitHub issues, as expected the list is growing:

https://github.com/linux-test-project/ltp/labels/missing%20coverage

But more importantly we are starting to implement testcases based on that list, recently we added the fsetxattr, fgetxattr, mlock2, prctl, and statx tests and more is about to come in the near future.

We do have also list of reproducers to be turned into testcases:

https://github.com/linux-test-project/ltp/labels/reproducer

Lastly but not least I would like to ask everyone to contribute to these lists. If you have a reproducer or notice missing coverage do not hesitate to open an issue.

DOWNLOAD AND LINKS

The latest version of the test-suite contains 3000+ tests for the Linux and can be downloaded at:

https://github.com/linux-test-project/ltp/releases/tag/20180926

The project pages as well as GIT repository are hosted on GitHub:

https://github.com/linux-test-project/ltp http://linux-test-project.github.io/

If you ever wondered how to write a LTP testcase, don't miss our developer documentation at:

https://github.com/linux-test-project/ltp/wiki/C-Test-Case-Tutorial https://github.com/linux-test-project/ltp/wiki/Test-Writing-Guidelines https://github.com/linux-test-project/ltp/wiki/BuildSystem

Patches, new tests, bugs, comments or questions should go to to our mailing list at [email protected].

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20180515..

61  Petr Vorel <[email protected]>
31  Xiao Yang <[email protected]>
28  Cyril Hrubis <[email protected]>
25  Alexey Kodanev <[email protected]>
18  Jan Stancek <[email protected]>
13  Li Wang <[email protected]>
 9  Alistair Strachan <[email protected]>
 9  Jinhui huang <[email protected]>
 9  Mylene Josserand <[email protected]>
 8  Yixin Zhang <[email protected]>
 7  Punit Agrawal <[email protected]>
 7  Rafael David Tinoco <[email protected]>
 7  Richard Palethorpe <[email protected]>
 5  Jinhui Huang <[email protected]>
 4  Sun Lianwen <[email protected]>
 4  vaishnavid <[email protected]>
 3  Michael Moese <[email protected]>
 3  Sandeep Patil <[email protected]>
 2  Amir Goldstein <[email protected]>
 2  Eric Biggers <[email protected]>
 2  Junchi Chen <[email protected]>
 2  Kewal Ukunde <[email protected]>
 2  Wang Long <[email protected]>
 1  Anton Smorodskyi <[email protected]>
 1  Chen Rong <[email protected]>
 1  Christian Lanig <[email protected]>
 1  Eddie.Horng <[email protected]>
 1  Fang Guan <[email protected]>
 1  Fathi Boudra <[email protected]>
 1  Guangwen Feng <[email protected]>
 1  He Zhe <[email protected]>
 1  Kenneth Magic <[email protected]>
 1  Po-Hsu Lin <[email protected]>
 1  Stanislav Kholmanskikh <[email protected]>
 1  Vishnu K <[email protected]>
 1  Yang Shi <[email protected]>
 1  xiao yang <[email protected]>

And also thanks to patch reviewers:

git log 20180515.. | grep -Ei '(reviewed|acked)-by:' | sed 's/.*by: //' | sort | uniq -c | sort -n -r

 64 Cyril Hrubis <[email protected]>
 36 Jan Stancek <[email protected]>
 33 Petr Vorel <[email protected]>
 18 Alexey Kodanev <[email protected]>
 17 Li Wang <[email protected]>
  2 Richard Palethorpe <[email protected]>
  2 Petr Vorel <[email protected]>
  1 Xiao Yang <[email protected]>
  1 Naresh Kamboju <[email protected]>
  1 Mimi Zohar <[email protected]>
  1 Jan Kara <[email protected]>

20180515

6 years ago

Since the last release 297 patches by 38 authors were merged.

NOTABLE CHANGES

  • New testcases:

    • two inotify regression tests for: 764baba80168 ("ovl: hash non-dir by lower inode for fsnotify") 31747eda41ef ("ovl: hash directory inodes for fsnotify")

    • sysclt01 a regression test for: 5ccba44ba118 ("sched/sysctl: Check user input value of sysctl_sched_time_avg")

    • CVE regression tests for:

      • CVE-2017-17053 - ccd5b3235180 ("x86/mm: Fix use-after-free of ldt_struct")
      • CVE-2017-16939 - 1137b5e2529a ("ipsec: Fix aborted xfrm policy dump crash")
      • CVE-2015-3290 - 9b6e6a8334d5 ("x86/nmi/64: Switch stacks on userspace NMI entry")
      • CVE-2017-17052 - 2b7e8665b4ff ("fork: fix incorrect fput of ->exe_file causing use-after-free")
      • CVE-2017-17807 - 4dca6ea1d943 ("KEYS: add missing permission check for request_key() destination")
    • read_all

      Test that aims to stress test /proc, /sys and safe subset of /dev filesystems by reading by reading each readable file using several threads.

    • The pwritev03 and preadv03 tests with O_DIRECT executed on all supported filesystems. (https://github.com/linux-test-project/ltp/wiki/Test-Writing-Guidelines#2214-testing-with-a-block-device)

    • Pids controller tests fixed a race that made them fail sporadically and the the coverage was increased.

    • pwrite03, write02

      Write syscall tests for special case with NULL buffer and len 0 where the call is expected to return 0 i.e. success.

  • Removed outdated and broken tests

    • sssd daemon test
    • mail command test
    • ht_interrupt -- hyperthreading interrupt balancing test
  • 54 testcases were cleaned up and converted to the new test library

  • The syscalls testrun has been speeded up by about a minute which is 5% of the runtime.

  • Several Android fixes have been applied.

  • New macro for automatic retry with exponential backoff has been added to the test library, which should replace all the ad-hoc retry loops we do have all around the codebase.

  • IMA (Integrity Measurement Architecture) tests

    • Were rewritten to use new API, updated, and various bugs has been fixed.

    • The most important changes:

      • Avoid running on tmpfs ima_measurements.sh and ima_violations.sh
      • ima_measurements.sh: support new IMA measurement templates, support testing most of IMA supported hash algorithms, fix & update iversion check
      • tpm.sh: replace ima_measure with evmctl (external)
      • ima_policy.sh: improve check of policy writability
      • ima_boot_aggregate: fixing event size for modern BIOS

      Many thanks to Mimi Zohar for her review and testing of IMA test cases.

  • Plus the usual number of fixes and cleanups all over the place

NETWORK TESTS

Changelog for network tests brought to you by Peter Vorel.

  • New testcases:

    • for IP_BIND_ADDRESS_NO_PORT, DCCP and UDP ipsec and for UDPLITE protocol
    • regression test sctp_big_chunk aka CVE-2018-5803
    • netstress gained support for IP_BIND_ADDRESS_NO_PORT, SO_ZEROCOPY flags and UDPLITE protocol
    • Use libtirpc for all RPC tests
  • Test cases rewritten into new shell API:

    • interface and multicast tests cases
    • in6_02
  • Removed tests cases

    • route{4,6}-ifdown
  • Various fixes and doc cleanups

CREDITS

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20180118.. 76 Petr Vorel [email protected] 38 Cyril Hrubis [email protected] 37 Michael Moese [email protected] 30 Alexey Kodanev [email protected] 21 Xiao Yang [email protected] 12 yang xu [email protected] 9 Yixin Zhang [email protected] 7 Jinhui Huang [email protected] 7 Richard Palethorpe [email protected] 6 Jan Stancek [email protected] 6 Li Wang [email protected] 5 Amir Goldstein [email protected] 4 Carlo Marcelo Arenas Belon [email protected] 4 Stanislav Kholmanskikh [email protected] 3 Petr Vorel [email protected] 3 Steve Muckle [email protected] 2 Anders Roxell [email protected] 2 Eric Biggers [email protected] 2 Khem Raj [email protected] 2 Sandeep Patil [email protected] 2 Sebastian Chlad [email protected] 2 xiao yang [email protected] 1 Christian Lanig [email protected] 1 Dmitry Safonov [email protected] 1 Erick Reyes [email protected] 1 Greg Hackmann [email protected] 1 Harish [email protected] 1 Hoang Van Tuyen [email protected] 1 Hridya Valsaraju [email protected] 1 Joe Konno [email protected] 1 Lars Persson [email protected] 1 Lianwen Sun [email protected] 1 Pavel Boldin [email protected] 1 Qiao Zhao [email protected] 1 Xiong Zhou [email protected] 1 Yang Pengfei [email protected] 1 akodanev [email protected] 1 xie hui [email protected] 1 yosun [email protected]

And also thanks to patch reviewers:

git log 20180118.. | grep -Ei '(reviewed|acked)-by:' |
sed 's/.*by: //' | sort | uniq -c | sort -n -r 34 Cyril Hrubis [email protected] 15 Petr Vorel [email protected] 15 Alexey Kodanev [email protected] 11 Jan Stancek [email protected] 7 Richard Palethorpe [email protected] 4 Li Wang [email protected] 3 Mimi Zohar [email protected] 2 Petr Vorel [email protected] 2 James Morris [email protected] 1 yang xu [email protected] 1 Xiao Yang [email protected]

20180118

6 years ago

Since the last release 278 patches by 35 authors were merged.

Notable changes for this release include:

  • New tests for:

    • unshare(1) command
    • ioctl07 test for RNDGETENTCNT ioctl()
    • new network MACsec testcases
    • new network IPsec SCTP and DCCP testcases
  • New regression tests for:

    • CVE-2017-5754 aka meltdown
    • CVE-2017-12193 (test add_key04)
    • CVE-2017-15299 and CVE-2017-15951 (test request_key03)
    • CVE-2017-7308 (test setsockopt02)
    • CVE-2016-9604 (test keyctl08)
    • CVE-2017-15537 (test ptrace07)
    • CVE-2017-12192 (test keyctl07)
    • add_key03 regression test for kernel commit 237bbd29f7a0
    • keyctl06 regression test for kernel commit e645016abc80
  • Fixed tests:

    • brk01 (test rewritten from scratch)
    • sigwaitinfo01 (fixed and enabled)
    • openposix aio testcases (uninitialized aiocb)
    • many smaller fixes
  • Removed tests:

    • invalid openposix pthread_barrier_wait_6-1 test
    • tcp_cmds tests for rwho, echo, finger, and rdist.
  • The test library gained support to run a particular test against different filesystems including FUSE filesystems such as NTFS or exFAT. The mkfs and kernel/FUSE support for a particular filesystem must be in-place otherwise the tests will skip it automatically.

    Some of the filesystem specific syscall tests such as fallocate() are executed this way now. We also have a new test that fills up filesystem using several threads and expects the syscalls to fail gracefully.

  • The fuzzy synchronization library that is used to trigger races mostly in CVE testcases was rewritten to use one thread instead of starting a thread on each iteration, which is not only faster but also more stable since we introduce less random jitter to the timing measurements this way.

  • Various fixes and enhancements for the network testcases.

  • Support for NUMA API older than v2 was dropped from the testcases.

  • The configure script now correctly detects devel libraries on -m32 build.

  • Another large scale cleanup using coccinelle was done on the code base.

    We transformed patterns such as:

    if (scall(...) < 0) tst_brkm(TBROK, ...);

    into:

    SAFE_SCALL();

    Which will produce unified and more verbose error reporting in case that the call to scall() will fail.

  • The runltp script now lists test skipped by the skipfile parameter as skipped in the testrun results, these were missing from it previously.

  • 24 testcases were cleaned up and converted to the new test library

  • The usual amount of fixes all over the code base