[LTP] [ANNOUNCE] The Linux Test Project has been released for SEPTEMBER 2020

From: Cyril Hrubis
Date: Wed Sep 30 2020 - 11:57:56 EST


Good news everyone,

the Linux Test Project test suite stable release for *September 2020* has been
released.

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,
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

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/20200930

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 ltp@xxxxxxxxxxxxxx.


CREDITS
=======

Many thanks to the people contributing to this release:

git shortlog -s -e -n 20200515..

70 Petr Vorel <pvorel@xxxxxxx>
66 Viresh Kumar <viresh.kumar@xxxxxxxxxx>
37 Cyril Hrubis <chrubis@xxxxxxx>
35 Yang Xu <xuyang2018.jy@xxxxxxxxxxxxxx>
33 Martin Doucha <mdoucha@xxxxxxx>
19 Li Wang <liwang@xxxxxxxxxx>
13 Jan Stancek <jstancek@xxxxxxxxxx>
11 Amir Goldstein <amir73il@xxxxxxxxx>
10 Xiao Yang <yangx.jy@xxxxxxxxxxxxxx>
6 Richard Palethorpe <rpalethorpe@xxxxxxxx>
5 Alexey Kodanev <alexey.kodanev@xxxxxxxxxx>
5 Feiyu Zhu <zhufy.jy@xxxxxxxxxxxxxx>
4 Filip Bozuta <Filip.Bozuta@xxxxxxxxxx>
4 Lachlan Sneff <t-josne@xxxxxxxxxxxxxxxxxxx>
4 Po-Hsu Lin <po-hsu.lin@xxxxxxxxxxxxx>
3 Erico Nunes <ernunes@xxxxxxxxxx>
3 Petr Vorel <petr.vorel@xxxxxxxxx>
3 Yixin Zhang <yixin.zhang@xxxxxxxxx>
2 Eric Biggers <ebiggers@xxxxxxxxxx>
2 Khem Raj <raj.khem@xxxxxxxxx>
2 Michal Kowalczyk <mkow@xxxxxxxxxxxxxxxxxxxxxx>
2 Shwetha Subramanian <shwetha@xxxxxxxxxxx>
2 Vikas Kumar <vikas.kumar2@xxxxxxx>
2 Yuan Gao <aiden.gaoyuan@xxxxxxxxx>
1 Bird, Tim <Tim.Bird@xxxxxxxx>
1 Fabrice Fontaine <fontaine.fabrice@xxxxxxxxx>
1 Harish <harish@xxxxxxxxxxxxx>
1 He Zhe <zhe.he@xxxxxxxxxxxxx>
1 Kushal Chand <kushalchand@xxxxxxxxxxx>
1 Nirav Parmar <niravparmar@xxxxxxxxxxx>
1 Qais Yousef <qais.yousef@xxxxxxx>
1 Qian Cai <cai@xxxxxxxxxx>
1 Stanislav Kholmanskikh <stanislav.kholmanskikh@xxxxxxxxxx>
1 Tree Davies <tdavies@xxxxxxxxxxxxxxx>
1 Vishwajith-K <31800616+Vishwajith-K@xxxxxxxxxxxxxxxxxxxxxxxx>
1 Vitaly Chikunov <vt@xxxxxxxxxxxx>
1 aidengao <aidengao@xxxxxxxxxx>
1 pravin <pravinraghul@xxxxxxxxxxx>


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 <chrubis@xxxxxxx>
72 Petr Vorel <pvorel@xxxxxxx>
48 Li Wang <liwang@xxxxxxxxxx>
22 Jan Stancek <jstancek@xxxxxxxxxx>
11 Xiao Yang <yangx.jy@xxxxxxxxxxxxxx>
9 Yang Xu <xuyang2018.jy@xxxxxxxxxxxxxx>
9 Alexey Kodanev <alexey.kodanev@xxxxxxxxxx>
8 Martin Doucha <mdoucha@xxxxxxx>
7 Mimi Zohar <zohar@xxxxxxxxxxxxx>
5 Vijay Kumar B. <vijaykumar@xxxxxxxxxxx>
4 Viresh Kumar <viresh.kumar@xxxxxxxxxx>
4 Lakshmi Ramasubramanian <nramas@xxxxxxxxxxxxxxxxxxx>
2 Tim Bird <tim.bird@xxxxxxxx>
2 Petr Vorel <petr.vorel@xxxxxxxxx>
2 Arnd Bergmann <arnd@xxxxxxxx>
2 Amir Goldstein <amir73il@xxxxxxxxx>
1 Richard Palethorpe <rpalethorpe@xxxxxxxx>
1 Jan Kara <jack@xxxxxxx>
1 Christian Brauner <christian.brauner@xxxxxxxxxx>

--
Cyril Hrubis
chrubis@xxxxxxx