From f09b8d587aa5a0bbaaa653ef9dc0d25837336e17 Mon Sep 17 00:00:00 2001 From: Dengke Du Date: Thu, 1 Jun 2017 04:11:21 -0400 Subject: ltp: upgrade to 20170516 1. rebase patch 0034-periodic_output.patch This patch can't apply, because in memcg_stress_test.sh, it used a different value for RUN_TIME: 15*60, we can check it here: https://github.com/linux-test-project/ltp/blob/20170516/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh#L40 Previous is 60*60, we can check it here: https://github.com/linux-test-project/ltp/blob/20170116/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh#L40 2. delete patch 0039-fcntl-fix-the-time-def-to-use-time_t.patch This patch didn't need any more, because the upstream has remove the unneeded time() declaration. We can check it here: https://github.com/linux-test-project/ltp/commit/f8c96804e5e89d360707c9670b18221b11cf3858 Signed-off-by: Dengke Du Signed-off-by: Ross Burton --- .../ltp/ltp/0034-periodic_output.patch | 32 ++++-- ...0039-fcntl-fix-the-time-def-to-use-time_t.patch | 29 ------ meta/recipes-extended/ltp/ltp_20170116.bb | 109 --------------------- meta/recipes-extended/ltp/ltp_20170516.bb | 108 ++++++++++++++++++++ 4 files changed, 130 insertions(+), 148 deletions(-) delete mode 100644 meta/recipes-extended/ltp/ltp/0039-fcntl-fix-the-time-def-to-use-time_t.patch delete mode 100644 meta/recipes-extended/ltp/ltp_20170116.bb create mode 100644 meta/recipes-extended/ltp/ltp_20170516.bb diff --git a/meta/recipes-extended/ltp/ltp/0034-periodic_output.patch b/meta/recipes-extended/ltp/ltp/0034-periodic_output.patch index 59caefe431..c2ef899cc5 100644 --- a/meta/recipes-extended/ltp/ltp/0034-periodic_output.patch +++ b/meta/recipes-extended/ltp/ltp/0034-periodic_output.patch @@ -1,4 +1,7 @@ -Add periodic output for long time test. +From 5a77e2bdc083f4f842a8ba7c2db1a7ac6e5f0664 Mon Sep 17 00:00:00 2001 +From: Dengke Du +Date: Wed, 31 May 2017 21:26:05 -0400 +Subject: [PATCH] Add periodic output for long time test. This is needed in context of having scripts running ltp tests and waiting with a timeout for the output of the tests. @@ -6,20 +9,26 @@ waiting with a timeout for the output of the tests. Signed-off-by: Tudor Florea Upstream-Status: Pending -diff -ruN a/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh b/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh ---- a/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh 2013-11-08 15:54:09.515049081 +0100 -+++ b/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh 2013-11-08 22:32:15.587370406 +0100 -@@ -37,7 +37,8 @@ +Signed-off-by: Dengke Du +--- + .../kernel/controllers/memcg/stress/memcg_stress_test.sh | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh b/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh +index af1a708..084e628 100755 +--- a/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh ++++ b/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh +@@ -37,7 +37,8 @@ if [ "x$(grep -w memory /proc/cgroups | cut -f4)" != "x1" ]; then exit 0 fi --RUN_TIME=$(( 60 * 60 )) +-RUN_TIME=$(( 15 * 60 )) +ONE_MINUTE=60 -+RUN_TIME=60 ++RUN_TIME=15 cleanup() { -@@ -62,7 +63,7 @@ +@@ -62,7 +63,7 @@ do_mount() # $1 - Number of cgroups # $2 - Allocated how much memory in one process? in MB # $3 - The interval to touch memory in a process @@ -28,16 +37,19 @@ diff -ruN a/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh b/tes run_stress() { do_mount; -@@ -81,7 +82,11 @@ +@@ -81,7 +82,11 @@ run_stress() eval /bin/kill -s SIGUSR1 \$pid$i 2> /dev/null done - sleep $4 + for i in $(seq 0 $(($4-1))) + do -+ eval echo "Started $i min ago. Still alive... " ++ eval echo "Started $i min ago. Still alive... " + sleep $ONE_MINUTE + done for i in $(seq 0 $(($1-1))) do +-- +2.8.1 + diff --git a/meta/recipes-extended/ltp/ltp/0039-fcntl-fix-the-time-def-to-use-time_t.patch b/meta/recipes-extended/ltp/ltp/0039-fcntl-fix-the-time-def-to-use-time_t.patch deleted file mode 100644 index c0c1dadd05..0000000000 --- a/meta/recipes-extended/ltp/ltp/0039-fcntl-fix-the-time-def-to-use-time_t.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 7bce3d223494803cb32897cabe66119076e53d89 Mon Sep 17 00:00:00 2001 -From: Dengke Du -Date: Wed, 8 Feb 2017 16:23:51 +0800 -Subject: [PATCH 5/5] fcntl: fix the time() def to use time_t - -This fixes the build on X32, where long is 32-bit rather than 64-bit. - -Signed-off-by: Christopher Larson -Signed-off-by: Dengke Du ---- - testcases/kernel/syscalls/fcntl/fcntl14.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/testcases/kernel/syscalls/fcntl/fcntl14.c b/testcases/kernel/syscalls/fcntl/fcntl14.c -index c61eb24..99e3867 100644 ---- a/testcases/kernel/syscalls/fcntl/fcntl14.c -+++ b/testcases/kernel/syscalls/fcntl/fcntl14.c -@@ -775,7 +775,7 @@ void dochild(void) - - void run_test(int file_flag, int file_mode, int seek, int start, int end) - { -- extern long time(); -+ extern time_t time(); - - fail = 0; - --- -2.7.4 - diff --git a/meta/recipes-extended/ltp/ltp_20170116.bb b/meta/recipes-extended/ltp/ltp_20170116.bb deleted file mode 100644 index a5494bc809..0000000000 --- a/meta/recipes-extended/ltp/ltp_20170116.bb +++ /dev/null @@ -1,109 +0,0 @@ -SUMMARY = "Linux Test Project" -DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." -HOMEPAGE = "http://ltp.sourceforge.net" -SECTION = "console/utils" -LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause" -LIC_FILES_CHKSUM = "\ - file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ - file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \ - file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ - file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ - file://testcases/open_posix_testsuite/COPYING;md5=216e43b72efbe4ed9017cc19c4c68b01 \ - file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ - file://tools/pounder21/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://utils/ffsb-6.0-rc2/COPYING;md5=c46082167a314d785d012a244748d803 \ -" - -DEPENDS = "attr libaio libcap acl openssl zip-native" -DEPENDS_append_libc-musl = " fts " -EXTRA_OEMAKE_append_libc-musl = " LIBC=musl " -CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__" -CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" -SRCREV = "2c8457b0769fc026e4e1772f4c2a6da0be63a631" - -SRC_URI = "git://github.com/linux-test-project/ltp.git \ - file://0001-add-_GNU_SOURCE-to-pec_listener.c.patch \ - file://0002-Add-knob-to-control-whether-numa-support-should-be-c.patch \ - file://0003-Add-knob-to-control-tirpc-support.patch \ - file://0004-build-Add-option-to-select-libc-implementation.patch \ - file://0005-kernel-controllers-Link-with-libfts-explicitly-on-mu.patch \ - file://0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch \ - file://0007-fix-__WORDSIZE-undeclared-when-building-with-musl.patch \ - file://0008-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch \ - file://0009-fix-redefinition-of-struct-msgbuf-error-building-wit.patch \ - file://0010-replace-__BEGIN_DECLS-and-__END_DECLS.patch \ - file://0011-Rename-sigset-variable-to-sigset1.patch \ - file://0012-fix-faccessat01.c-build-fails-with-security-flags.patch \ - file://0018-guard-mallocopt-with-__GLIBC__.patch \ - file://0020-getdents-define-getdents-getdents64-only-for-glibc.patch \ - file://0021-Define-_GNU_SOURCE-for-MREMAP_MAYMOVE-definition.patch \ - file://0023-ptrace-Use-int-instead-of-enum-__ptrace_request.patch \ - file://0024-rt_sigaction-rt_sigprocmark-Define-_GNU_SOURCE.patch \ - file://0025-mc_gethost-include-sys-types.h.patch \ - file://0026-crash01-Define-_GNU_SOURCE.patch \ - file://0027-sysconf01-Use-_SC_2_C_VERSION-conditionally.patch \ - file://0028-rt_sigaction.h-Use-sighandler_t-instead-of-__sighand.patch \ - file://0030-lib-Use-PTHREAD_MUTEX_RECURSIVE-in-place-of-PTHREAD_.patch \ - file://0033-shmat1-Cover-GNU-specific-code-under-__USE_GNU.patch \ - file://0034-periodic_output.patch \ - file://0035-fix-test_proc_kill-hang.patch \ - file://0036-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch \ - file://0039-fcntl-fix-the-time-def-to-use-time_t.patch \ - " - -S = "${WORKDIR}/git" - -inherit autotools-brokensep - -TARGET_CC_ARCH += "${LDFLAGS}" - -export prefix = "/opt/ltp" -export exec_prefix = "/opt/ltp" - -PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," -EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" -EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite " -# ltp network/rpc test cases ftbfs when libtirpc is found -EXTRA_OECONF += " --without-tirpc " - -# The makefiles make excessive use of make -C and several include testcases.mk -# which triggers a build of the syscall header. To reproduce, build ltp, -# then delete the header, then "make -j XX" and watch regen.sh run multiple -# times. Its easier to generate this once here instead. -do_compile_prepend () { - ( make -C ${B}/testcases/kernel include/linux_syscall_numbers.h ) -} - -do_install(){ - install -d ${D}/opt/ltp/ - oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install - - # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run - # as it lacks dependency on some perl moudle such as LWP::Simple - # And this script previously works as a tool for analyzing failures from LTP - # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses - # http://khack.osdl.org to retrieve ltp test results run on - # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible - rm -rf ${D}/opt/ltp/bin/STPfailure_report.pl - - # In oe-core, we doesn't support ksh and csh now, so remove in.csh and in.ksh. - rm ${D}/opt/ltp/testcases/data/file01/in.csh - rm ${D}/opt/ltp/testcases/data/file01/in.ksh - # Copy POSIX test suite into ${D}/opt/ltp/testcases by manual - cp -r testcases/open_posix_testsuite ${D}/opt/ltp/testcases -} - -RDEPENDS_${PN} = "perl e2fsprogs-mke2fs python-core libaio bash gawk expect ldd unzip gzip cpio cronie logrotate which at" - -FILES_${PN}-staticdev += "/opt/ltp/lib/libmem.a /opt/ltp/testcases/data/nm01/lib.a" - -FILES_${PN} += "/opt/ltp/* /opt/ltp/runtest/* /opt/ltp/scenario_groups/* /opt/ltp/testcases/bin/* /opt/ltp/testcases/bin/*/bin/* /opt/ltp/testscripts/* /opt/ltp/testcases/open_posix_testsuite/* /opt/ltp/testcases/open_posix_testsuite/conformance/* /opt/ltp/testcases/open_posix_testsuite/Documentation/* /opt/ltp/testcases/open_posix_testsuite/functional/* /opt/ltp/testcases/open_posix_testsuite/include/* /opt/ltp/testcases/open_posix_testsuite/scripts/* /opt/ltp/testcases/open_posix_testsuite/stress/* /opt/ltp/testcases/open_posix_testsuite/tools/*" - -# Avoid generated binaries stripping. Otherwise some of the ltp tests such as ldd01 & nm01 fails -INHIBIT_PACKAGE_STRIP = "1" -INHIBIT_PACKAGE_DEBUG_SPLIT = "1" -# However, test_arch_stripped is already stripped, so... -INSANE_SKIP_${PN} += "already-stripped" - diff --git a/meta/recipes-extended/ltp/ltp_20170516.bb b/meta/recipes-extended/ltp/ltp_20170516.bb new file mode 100644 index 0000000000..012c43de35 --- /dev/null +++ b/meta/recipes-extended/ltp/ltp_20170516.bb @@ -0,0 +1,108 @@ +SUMMARY = "Linux Test Project" +DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." +HOMEPAGE = "http://ltp.sourceforge.net" +SECTION = "console/utils" +LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause" +LIC_FILES_CHKSUM = "\ + file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ + file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \ + file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ + file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ + file://testcases/open_posix_testsuite/COPYING;md5=48b1c5ec633e3e30ec2cf884ae699947 \ + file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ + file://tools/pounder21/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://utils/ffsb-6.0-rc2/COPYING;md5=c46082167a314d785d012a244748d803 \ +" + +DEPENDS = "attr libaio libcap acl openssl zip-native" +DEPENDS_append_libc-musl = " fts " +EXTRA_OEMAKE_append_libc-musl = " LIBC=musl " +CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__" +CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" +SRCREV = "6c6c6ca40afb3611e52486f670085762ff451e91" + +SRC_URI = "git://github.com/linux-test-project/ltp.git \ + file://0001-add-_GNU_SOURCE-to-pec_listener.c.patch \ + file://0002-Add-knob-to-control-whether-numa-support-should-be-c.patch \ + file://0003-Add-knob-to-control-tirpc-support.patch \ + file://0004-build-Add-option-to-select-libc-implementation.patch \ + file://0005-kernel-controllers-Link-with-libfts-explicitly-on-mu.patch \ + file://0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch \ + file://0007-fix-__WORDSIZE-undeclared-when-building-with-musl.patch \ + file://0008-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch \ + file://0009-fix-redefinition-of-struct-msgbuf-error-building-wit.patch \ + file://0010-replace-__BEGIN_DECLS-and-__END_DECLS.patch \ + file://0011-Rename-sigset-variable-to-sigset1.patch \ + file://0012-fix-faccessat01.c-build-fails-with-security-flags.patch \ + file://0018-guard-mallocopt-with-__GLIBC__.patch \ + file://0020-getdents-define-getdents-getdents64-only-for-glibc.patch \ + file://0021-Define-_GNU_SOURCE-for-MREMAP_MAYMOVE-definition.patch \ + file://0023-ptrace-Use-int-instead-of-enum-__ptrace_request.patch \ + file://0024-rt_sigaction-rt_sigprocmark-Define-_GNU_SOURCE.patch \ + file://0025-mc_gethost-include-sys-types.h.patch \ + file://0026-crash01-Define-_GNU_SOURCE.patch \ + file://0027-sysconf01-Use-_SC_2_C_VERSION-conditionally.patch \ + file://0028-rt_sigaction.h-Use-sighandler_t-instead-of-__sighand.patch \ + file://0030-lib-Use-PTHREAD_MUTEX_RECURSIVE-in-place-of-PTHREAD_.patch \ + file://0033-shmat1-Cover-GNU-specific-code-under-__USE_GNU.patch \ + file://0034-periodic_output.patch \ + file://0035-fix-test_proc_kill-hang.patch \ + file://0036-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch \ + " + +S = "${WORKDIR}/git" + +inherit autotools-brokensep + +TARGET_CC_ARCH += "${LDFLAGS}" + +export prefix = "/opt/ltp" +export exec_prefix = "/opt/ltp" + +PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," +EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" +EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite " +# ltp network/rpc test cases ftbfs when libtirpc is found +EXTRA_OECONF += " --without-tirpc " + +# The makefiles make excessive use of make -C and several include testcases.mk +# which triggers a build of the syscall header. To reproduce, build ltp, +# then delete the header, then "make -j XX" and watch regen.sh run multiple +# times. Its easier to generate this once here instead. +do_compile_prepend () { + ( make -C ${B}/testcases/kernel include/linux_syscall_numbers.h ) +} + +do_install(){ + install -d ${D}/opt/ltp/ + oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install + + # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run + # as it lacks dependency on some perl moudle such as LWP::Simple + # And this script previously works as a tool for analyzing failures from LTP + # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses + # http://khack.osdl.org to retrieve ltp test results run on + # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible + rm -rf ${D}/opt/ltp/bin/STPfailure_report.pl + + # In oe-core, we doesn't support ksh and csh now, so remove in.csh and in.ksh. + rm ${D}/opt/ltp/testcases/data/file01/in.csh + rm ${D}/opt/ltp/testcases/data/file01/in.ksh + # Copy POSIX test suite into ${D}/opt/ltp/testcases by manual + cp -r testcases/open_posix_testsuite ${D}/opt/ltp/testcases +} + +RDEPENDS_${PN} = "perl e2fsprogs-mke2fs python-core libaio bash gawk expect ldd unzip gzip cpio cronie logrotate which at" + +FILES_${PN}-staticdev += "/opt/ltp/lib/libmem.a /opt/ltp/testcases/data/nm01/lib.a" + +FILES_${PN} += "/opt/ltp/* /opt/ltp/runtest/* /opt/ltp/scenario_groups/* /opt/ltp/testcases/bin/* /opt/ltp/testcases/bin/*/bin/* /opt/ltp/testscripts/* /opt/ltp/testcases/open_posix_testsuite/* /opt/ltp/testcases/open_posix_testsuite/conformance/* /opt/ltp/testcases/open_posix_testsuite/Documentation/* /opt/ltp/testcases/open_posix_testsuite/functional/* /opt/ltp/testcases/open_posix_testsuite/include/* /opt/ltp/testcases/open_posix_testsuite/scripts/* /opt/ltp/testcases/open_posix_testsuite/stress/* /opt/ltp/testcases/open_posix_testsuite/tools/*" + +# Avoid generated binaries stripping. Otherwise some of the ltp tests such as ldd01 & nm01 fails +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +# However, test_arch_stripped is already stripped, so... +INSANE_SKIP_${PN} += "already-stripped" + -- cgit 1.2.3-korg