* [PATCH V2 0/1] ltp: upgrade to upstream latest commit on 20170804
@ 2017-08-04 10:00 Dengke Du
2017-08-04 10:00 ` [PATCH V2 1/1] " Dengke Du
0 siblings, 1 reply; 4+ messages in thread
From: Dengke Du @ 2017-08-04 10:00 UTC (permalink / raw)
To: openembedded-core
The following changes since commit 9ed748a542b520c1cb763d981969233c0f5efd4e:
bitbake: daemonize: Always print any remaning UI events at exit (2017-08-03 11:14:13 +0100)
are available in the git repository at:
https://github.com/DengkeDu/openembedded-core.git dengke/ltp-upgrade-to-20170804
https://github.com//tree/dengke/ltp-upgrade-to-20170804
Dengke Du (1):
ltp: upgrade to upstream latest commit on 20170804
.../ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch | 34 ------
...TH_MAX-undeclared-when-building-with-musl.patch | 31 -----
...faccessat-and-fchmodat-Fix-build-warnings.patch | 68 -----------
...d_key02-update-to-test-fix-for-nonempty-N.patch | 136 ---------------------
meta/recipes-extended/ltp/ltp_20170516.bb | 14 +--
5 files changed, 1 insertion(+), 282 deletions(-)
delete mode 100644 meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
delete mode 100644 meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
delete mode 100644 meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
delete mode 100644 meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
--
2.7.4
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH V2 1/1] ltp: upgrade to upstream latest commit on 20170804
2017-08-04 10:00 [PATCH V2 0/1] ltp: upgrade to upstream latest commit on 20170804 Dengke Du
@ 2017-08-04 10:00 ` Dengke Du
2017-08-09 20:47 ` Burton, Ross
0 siblings, 1 reply; 4+ messages in thread
From: Dengke Du @ 2017-08-04 10:00 UTC (permalink / raw)
To: openembedded-core
drop 4 patches because the upstream already contains them:
0001-dirtyc0w-Include-stdint.h.patch
0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
0037-faccessat-and-fchmodat-Fix-build-warnings.patch
0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
drop the do_compile_prepend function, because the upstream already fix
the parallel make race, we can check it here:
https://github.com/linux-test-project/ltp/commit/3f385652efe811fe7491474f8513baf44cf0a12d
Signed-off-by: Dengke Du <dengke.du@windriver.com>
---
.../ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch | 34 ------
...TH_MAX-undeclared-when-building-with-musl.patch | 31 -----
...faccessat-and-fchmodat-Fix-build-warnings.patch | 68 -----------
...d_key02-update-to-test-fix-for-nonempty-N.patch | 136 ---------------------
meta/recipes-extended/ltp/ltp_20170516.bb | 14 +--
5 files changed, 1 insertion(+), 282 deletions(-)
delete mode 100644 meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
delete mode 100644 meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
delete mode 100644 meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
delete mode 100644 meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
diff --git a/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch b/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
deleted file mode 100644
index 5c73be4..0000000
--- a/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 1b30d8dac1a37dc0abbb3b545db2824d6489e23f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 9 Jun 2017 09:32:13 -0700
-Subject: [PATCH] dirtyc0w: Include stdint.h
-
-uintptr_t is defined in stdint.h
-
-Fixes
-| dirtyc0w_child.c:76:15: error: 'uintptr_t' undeclared (first use in this function); did you mean 'intptr_t'?
-| lseek(mfd, (uintptr_t) map, SEEK_SET);
-| ^~~~~~~~~
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted
-
- testcases/kernel/security/dirtyc0w/dirtyc0w_child.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c b/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
-index 5328a9bc4..49abdd6ba 100644
---- a/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
-+++ b/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
-@@ -23,6 +23,7 @@
- #include <sys/stat.h>
- #include <string.h>
- #include <stdlib.h>
-+#include <stdint.h>
- #include <pwd.h>
-
- #include "tst_safe_pthread.h"
---
-2.13.1
-
diff --git a/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch b/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
deleted file mode 100644
index 020ddfe..0000000
--- a/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From b906ec2fe4711a727e198cd9259287c042eef8e2 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@windriver.com>
-Date: Thu, 9 Feb 2017 16:41:12 +0800
-Subject: [PATCH] fix PATH_MAX undeclared when building with musl
-
-fix PATH_MAX undeclared when building with musl.
-
-Upstream-Status: Submitted [https://github.com/linux-test-project/ltp/pull/176]
-
-Signed-off-by: Dengke Du <dengke.du@windriver.com>
----
- include/tst_test.h | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/include/tst_test.h b/include/tst_test.h
-index 335c82684..4dfa1511b 100644
---- a/include/tst_test.h
-+++ b/include/tst_test.h
-@@ -23,6 +23,9 @@
- #endif /* __TEST_H__ */
-
- #include <unistd.h>
-+#ifndef __GLIBC__
-+#include <limits.h>
-+#endif
-
- #include "tst_common.h"
- #include "tst_res_flags.h"
---
-2.11.0
-
diff --git a/meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch b/meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
deleted file mode 100644
index 99497d6..0000000
--- a/meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647 Mon Sep 17 00:00:00 2001
-From: Naresh Kamboju <naresh.kamboju@linaro.org>
-Date: Mon, 19 Jun 2017 19:01:21 +0530
-Subject: [PATCH 1/7] faccessat and fchmodat: Fix build warnings
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fixing below build warnings.
-
-ltp-full-20170516/testcases/kernel/syscalls/faccessat$ make
-In file included from ../../../../include/old/test.h:51:0,
- from faccessat01.c:44:
-faccessat01.c: In function ‘setup’:
-../../../../include/old/old_safe_file_ops.h:55:27:
-warning: format not a string literal and no format arguments [-Wformat-security]
- (path), (fmt), ## __VA_ARGS__)
- ^
-faccessat01.c:132:2: note: in expansion of macro ‘SAFE_FILE_PRINTF’
- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
- ^
-../../../../include/old/old_safe_file_ops.h:55:27:
-warning: format not a string literal and no format arguments [-Wformat-security]
- (path), (fmt), ## __VA_ARGS__)
- ^
-faccessat01.c:133:2: note: in expansion of macro ‘SAFE_FILE_PRINTF’
- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
-
-Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>
-Upstream-Status: Accepted [https://github.com/linux-test-project/ltp/commit/4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647]
----
- testcases/kernel/syscalls/faccessat/faccessat01.c | 4 ++--
- testcases/kernel/syscalls/fchmodat/fchmodat01.c | 4 ++--
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/testcases/kernel/syscalls/faccessat/faccessat01.c b/testcases/kernel/syscalls/faccessat/faccessat01.c
-index 622dfd3b0..def7fa755 100644
---- a/testcases/kernel/syscalls/faccessat/faccessat01.c
-+++ b/testcases/kernel/syscalls/faccessat/faccessat01.c
-@@ -129,8 +129,8 @@ void setup(void)
- fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY);
- fds[1] = fds[4] = fds[0];
-
-- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
-- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
-+ SAFE_FILE_PRINTF(cleanup, testfile, "%s", testfile);
-+ SAFE_FILE_PRINTF(cleanup, testfile2, "%s", testfile2);
-
- fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR, 0600);
-
-diff --git a/testcases/kernel/syscalls/fchmodat/fchmodat01.c b/testcases/kernel/syscalls/fchmodat/fchmodat01.c
-index 6bf66d8b8..7856ed3fa 100644
---- a/testcases/kernel/syscalls/fchmodat/fchmodat01.c
-+++ b/testcases/kernel/syscalls/fchmodat/fchmodat01.c
-@@ -127,8 +127,8 @@ void setup(void)
- fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY);
- fds[1] = fds[4] = fds[0];
-
-- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
-- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
-+ SAFE_FILE_PRINTF(cleanup, testfile, "%s", testfile);
-+ SAFE_FILE_PRINTF(cleanup, testfile2, "%s", testfile2);
-
- fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR, 0600);
- fds[3] = 100;
---
-2.13.0
-
diff --git a/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch b/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
deleted file mode 100644
index 3759e1f..0000000
--- a/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
+++ /dev/null
@@ -1,136 +0,0 @@
-From 25045624e941ee76a13febd36187e23c6c435507 Mon Sep 17 00:00:00 2001
-From: Eric Biggers <ebiggers@google.com>
-Date: Mon, 12 Jun 2017 11:55:21 -0700
-Subject: [PATCH 01/39] syscalls/add_key02: update to test fix for nonempty
- NULL payload
-
-add_key02 was supposed to be a "Basic test for the add_key() syscall",
-but it actually happened to test the obscure case of passing a NULL
-payload with nonzero length. This case was mishandled by the kernel,
-which either returned EINVAL or crashed with a NULL pointer dereference,
-depending on the key type. (The former applied to the test, as it used
-the "user" key type.) The expected behavior in this case is that the
-syscall fail with EFAULT.
-
-Update the test to expect the fixed behavior from v4.12-rc5, and make
-the test more thorough by testing additional key types, including ones
-that caused a NULL pointer dereference in unfixed kernels.
-
-Signed-off-by: Eric Biggers <ebiggers@google.com>
-Upstream-Status: Accepted [https://github.com/linux-test-project/ltp/commit/25045624e941ee76a13febd36187e23c6c435507]
----
- testcases/kernel/syscalls/add_key/add_key02.c | 69 ++++++++++++++++++++-------
- 1 file changed, 51 insertions(+), 18 deletions(-)
-
-diff --git a/testcases/kernel/syscalls/add_key/add_key02.c b/testcases/kernel/syscalls/add_key/add_key02.c
-index 866800d6f..2e3308dcd 100644
---- a/testcases/kernel/syscalls/add_key/add_key02.c
-+++ b/testcases/kernel/syscalls/add_key/add_key02.c
-@@ -1,5 +1,6 @@
- /******************************************************************************
- * Copyright (c) Crackerjack Project., 2007 *
-+ * Copyright (c) 2017 Google, Inc. *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
-@@ -18,10 +19,17 @@
- ******************************************************************************/
-
- /*
-- * Basic test for the add_key() syscall.
-+ * Test that the add_key() syscall correctly handles a NULL payload with nonzero
-+ * length. Specifically, it should fail with EFAULT rather than oopsing the
-+ * kernel with a NULL pointer dereference or failing with EINVAL, as it did
-+ * before (depending on the key type). This is a regression test for commit
-+ * 5649645d725c ("KEYS: fix dereferencing NULL payload with nonzero length").
- *
-- * History: Porting from Crackerjack to LTP is done by
-- * Manas Kumar Nayak maknayak@in.ibm.com>
-+ * Note that none of the key types that exhibited the NULL pointer dereference
-+ * are guaranteed to be built into the kernel, so we just test as many as we
-+ * can, in the hope of catching one. We also test with the "user" key type for
-+ * good measure, although it was one of the types that failed with EINVAL rather
-+ * than dereferencing NULL.
- */
-
- #include "config.h"
-@@ -33,36 +41,61 @@
-
- #ifdef HAVE_LINUX_KEYCTL_H
- struct tcase {
-- char *type;
-- char *desc;
-- void *payload;
-- int plen;
-- int exp_errno;
-+ const char *type;
-+ size_t plen;
- } tcases[] = {
-- {"user", "firstkey", NULL, 1, EINVAL}
-+ /*
-+ * The payload length we test for each key type needs to pass initial
-+ * validation but is otherwise arbitrary. Note: the "rxrpc_s" key type
-+ * requires a payload of exactly 8 bytes.
-+ */
-+ { "asymmetric", 64 },
-+ { "cifs.idmap", 64 },
-+ { "cifs.spnego", 64 },
-+ { "pkcs7_test", 64 },
-+ { "rxrpc", 64 },
-+ { "rxrpc_s", 8 },
-+ { "user", 64 },
- };
- #endif /* HAVE_LINUX_KEYCTL_H */
-
- static void verify_add_key(unsigned int i)
- {
- #ifdef HAVE_LINUX_KEYCTL_H
-- TEST(tst_syscall(__NR_add_key, tcases[i].type, tcases[i].desc,
-- tcases[i].payload, tcases[i].plen,
-- KEY_SPEC_USER_KEYRING));
-+ TEST(tst_syscall(__NR_add_key, tcases[i].type, "abc:def",
-+ NULL, tcases[i].plen, KEY_SPEC_PROCESS_KEYRING));
-
- if (TEST_RETURN != -1) {
-- tst_res(TFAIL, "add_key() passed unexpectedly");
-+ tst_res(TFAIL,
-+ "add_key() with key type '%s' unexpectedly succeeded",
-+ tcases[i].type);
- return;
- }
-
-- if (TEST_ERRNO == tcases[i].exp_errno) {
-- tst_res(TPASS | TTERRNO, "add_key() failed expectedly");
-+ if (TEST_ERRNO == EFAULT) {
-+ tst_res(TPASS, "received expected EFAULT with key type '%s'",
-+ tcases[i].type);
- return;
- }
-
-- tst_res(TFAIL | TTERRNO,
-- "add_key() failed unexpectedly, expected %s",
-- tst_strerrno(tcases[i].exp_errno));
-+ if (TEST_ERRNO == ENODEV) {
-+ tst_res(TCONF, "kernel doesn't support key type '%s'",
-+ tcases[i].type);
-+ return;
-+ }
-+
-+ /*
-+ * It's possible for the "asymmetric" key type to be supported, but with
-+ * no asymmetric key parsers registered. In that case, attempting to
-+ * add a key of type asymmetric will fail with EBADMSG.
-+ */
-+ if (TEST_ERRNO == EBADMSG && !strcmp(tcases[i].type, "asymmetric")) {
-+ tst_res(TCONF, "no asymmetric key parsers are registered");
-+ return;
-+ }
-+
-+ tst_res(TFAIL | TTERRNO, "unexpected error with key type '%s'",
-+ tcases[i].type);
- #else
- tst_brk(TCONF, "linux/keyctl.h was missing upon compilation.");
- #endif /* HAVE_LINUX_KEYCTL_H */
---
-2.13.0
-
diff --git a/meta/recipes-extended/ltp/ltp_20170516.bb b/meta/recipes-extended/ltp/ltp_20170516.bb
index 86b8012..46c9741 100644
--- a/meta/recipes-extended/ltp/ltp_20170516.bb
+++ b/meta/recipes-extended/ltp/ltp_20170516.bb
@@ -21,7 +21,7 @@ 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"
+SRCREV = "18916a2e6d8c997b7b29dcfa9550d5a15b22ed22"
SRC_URI = "git://github.com/linux-test-project/ltp.git \
file://0001-add-_GNU_SOURCE-to-pec_listener.c.patch \
@@ -29,7 +29,6 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \
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 \
@@ -49,9 +48,6 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \
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://0001-dirtyc0w-Include-stdint.h.patch \
- file://0037-faccessat-and-fchmodat-Fix-build-warnings.patch \
- file://0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch \
"
S = "${WORKDIR}/git"
@@ -69,14 +65,6 @@ 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
--
2.7.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH V2 1/1] ltp: upgrade to upstream latest commit on 20170804
2017-08-04 10:00 ` [PATCH V2 1/1] " Dengke Du
@ 2017-08-09 20:47 ` Burton, Ross
2017-08-11 1:15 ` Dengke Du
0 siblings, 1 reply; 4+ messages in thread
From: Burton, Ross @ 2017-08-09 20:47 UTC (permalink / raw)
To: Dengke Du; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 17569 bytes --]
Breaks with musl:
http://errors.yoctoproject.org/Errors/Details/150199/
Ross
On 4 August 2017 at 11:00, Dengke Du <dengke.du@windriver.com> wrote:
> drop 4 patches because the upstream already contains them:
>
> 0001-dirtyc0w-Include-stdint.h.patch
> 0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> 0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> 0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
>
> drop the do_compile_prepend function, because the upstream already fix
> the parallel make race, we can check it here:
>
> https://github.com/linux-test-project/ltp/commit/
> 3f385652efe811fe7491474f8513baf44cf0a12d
>
> Signed-off-by: Dengke Du <dengke.du@windriver.com>
> ---
> .../ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch | 34 ------
> ...TH_MAX-undeclared-when-building-with-musl.patch | 31 -----
> ...faccessat-and-fchmodat-Fix-build-warnings.patch | 68 -----------
> ...d_key02-update-to-test-fix-for-nonempty-N.patch | 136
> ---------------------
> meta/recipes-extended/ltp/ltp_20170516.bb | 14 +--
> 5 files changed, 1 insertion(+), 282 deletions(-)
> delete mode 100644 meta/recipes-extended/ltp/ltp/
> 0001-dirtyc0w-Include-stdint.h.patch
> delete mode 100644 meta/recipes-extended/ltp/ltp/
> 0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> delete mode 100644 meta/recipes-extended/ltp/ltp/
> 0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> delete mode 100644 meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-
> update-to-test-fix-for-nonempty-N.patch
>
> diff --git a/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> b/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> deleted file mode 100644
> index 5c73be4..0000000
> --- a/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> +++ /dev/null
> @@ -1,34 +0,0 @@
> -From 1b30d8dac1a37dc0abbb3b545db2824d6489e23f Mon Sep 17 00:00:00 2001
> -From: Khem Raj <raj.khem@gmail.com>
> -Date: Fri, 9 Jun 2017 09:32:13 -0700
> -Subject: [PATCH] dirtyc0w: Include stdint.h
> -
> -uintptr_t is defined in stdint.h
> -
> -Fixes
> -| dirtyc0w_child.c:76:15: error: 'uintptr_t' undeclared (first use in
> this function); did you mean 'intptr_t'?
> -| lseek(mfd, (uintptr_t) map, SEEK_SET);
> -| ^~~~~~~~~
> -
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ----
> -Upstream-Status: Submitted
> -
> - testcases/kernel/security/dirtyc0w/dirtyc0w_child.c | 1 +
> - 1 file changed, 1 insertion(+)
> -
> -diff --git a/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> b/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> -index 5328a9bc4..49abdd6ba 100644
> ---- a/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> -+++ b/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> -@@ -23,6 +23,7 @@
> - #include <sys/stat.h>
> - #include <string.h>
> - #include <stdlib.h>
> -+#include <stdint.h>
> - #include <pwd.h>
> -
> - #include "tst_safe_pthread.h"
> ---
> -2.13.1
> -
> diff --git a/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-
> undeclared-when-building-with-musl.patch b/meta/recipes-extended/ltp/
> ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> deleted file mode 100644
> index 020ddfe..0000000
> --- a/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-
> undeclared-when-building-with-musl.patch
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -From b906ec2fe4711a727e198cd9259287c042eef8e2 Mon Sep 17 00:00:00 2001
> -From: Dengke Du <dengke.du@windriver.com>
> -Date: Thu, 9 Feb 2017 16:41:12 +0800
> -Subject: [PATCH] fix PATH_MAX undeclared when building with musl
> -
> -fix PATH_MAX undeclared when building with musl.
> -
> -Upstream-Status: Submitted [https://github.com/linux-
> test-project/ltp/pull/176]
> -
> -Signed-off-by: Dengke Du <dengke.du@windriver.com>
> ----
> - include/tst_test.h | 3 +++
> - 1 file changed, 3 insertions(+)
> -
> -diff --git a/include/tst_test.h b/include/tst_test.h
> -index 335c82684..4dfa1511b 100644
> ---- a/include/tst_test.h
> -+++ b/include/tst_test.h
> -@@ -23,6 +23,9 @@
> - #endif /* __TEST_H__ */
> -
> - #include <unistd.h>
> -+#ifndef __GLIBC__
> -+#include <limits.h>
> -+#endif
> -
> - #include "tst_common.h"
> - #include "tst_res_flags.h"
> ---
> -2.11.0
> -
> diff --git a/meta/recipes-extended/ltp/ltp/0037-faccessat-and-
> fchmodat-Fix-build-warnings.patch b/meta/recipes-extended/ltp/
> ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> deleted file mode 100644
> index 99497d6..0000000
> --- a/meta/recipes-extended/ltp/ltp/0037-faccessat-and-
> fchmodat-Fix-build-warnings.patch
> +++ /dev/null
> @@ -1,68 +0,0 @@
> -From 4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647 Mon Sep 17 00:00:00 2001
> -From: Naresh Kamboju <naresh.kamboju@linaro.org>
> -Date: Mon, 19 Jun 2017 19:01:21 +0530
> -Subject: [PATCH 1/7] faccessat and fchmodat: Fix build warnings
> -MIME-Version: 1.0
> -Content-Type: text/plain; charset=UTF-8
> -Content-Transfer-Encoding: 8bit
> -
> -Fixing below build warnings.
> -
> -ltp-full-20170516/testcases/kernel/syscalls/faccessat$ make
> -In file included from ../../../../include/old/test.h:51:0,
> - from faccessat01.c:44:
> -faccessat01.c: In function ‘setup’:
> -../../../../include/old/old_safe_file_ops.h:55:27:
> -warning: format not a string literal and no format arguments
> [-Wformat-security]
> - (path), (fmt), ## __VA_ARGS__)
> - ^
> -faccessat01.c:132:2: note: in expansion of macro ‘SAFE_FILE_PRINTF’
> - SAFE_FILE_PRINTF(cleanup, testfile, testfile);
> - ^
> -../../../../include/old/old_safe_file_ops.h:55:27:
> -warning: format not a string literal and no format arguments
> [-Wformat-security]
> - (path), (fmt), ## __VA_ARGS__)
> - ^
> -faccessat01.c:133:2: note: in expansion of macro ‘SAFE_FILE_PRINTF’
> - SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
> -
> -Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>
> -Upstream-Status: Accepted [https://github.com/linux-
> test-project/ltp/commit/4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647]
> ----
> - testcases/kernel/syscalls/faccessat/faccessat01.c | 4 ++--
> - testcases/kernel/syscalls/fchmodat/fchmodat01.c | 4 ++--
> - 2 files changed, 4 insertions(+), 4 deletions(-)
> -
> -diff --git a/testcases/kernel/syscalls/faccessat/faccessat01.c
> b/testcases/kernel/syscalls/faccessat/faccessat01.c
> -index 622dfd3b0..def7fa755 100644
> ---- a/testcases/kernel/syscalls/faccessat/faccessat01.c
> -+++ b/testcases/kernel/syscalls/faccessat/faccessat01.c
> -@@ -129,8 +129,8 @@ void setup(void)
> - fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY);
> - fds[1] = fds[4] = fds[0];
> -
> -- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
> -- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
> -+ SAFE_FILE_PRINTF(cleanup, testfile, "%s", testfile);
> -+ SAFE_FILE_PRINTF(cleanup, testfile2, "%s", testfile2);
> -
> - fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR, 0600);
> -
> -diff --git a/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> b/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> -index 6bf66d8b8..7856ed3fa 100644
> ---- a/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> -+++ b/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> -@@ -127,8 +127,8 @@ void setup(void)
> - fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY);
> - fds[1] = fds[4] = fds[0];
> -
> -- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
> -- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
> -+ SAFE_FILE_PRINTF(cleanup, testfile, "%s", testfile);
> -+ SAFE_FILE_PRINTF(cleanup, testfile2, "%s", testfile2);
> -
> - fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR, 0600);
> - fds[3] = 100;
> ---
> -2.13.0
> -
> diff --git a/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-
> update-to-test-fix-for-nonempty-N.patch b/meta/recipes-extended/ltp/
> ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
> deleted file mode 100644
> index 3759e1f..0000000
> --- a/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-
> update-to-test-fix-for-nonempty-N.patch
> +++ /dev/null
> @@ -1,136 +0,0 @@
> -From 25045624e941ee76a13febd36187e23c6c435507 Mon Sep 17 00:00:00 2001
> -From: Eric Biggers <ebiggers@google.com>
> -Date: Mon, 12 Jun 2017 11:55:21 -0700
> -Subject: [PATCH 01/39] syscalls/add_key02: update to test fix for nonempty
> - NULL payload
> -
> -add_key02 was supposed to be a "Basic test for the add_key() syscall",
> -but it actually happened to test the obscure case of passing a NULL
> -payload with nonzero length. This case was mishandled by the kernel,
> -which either returned EINVAL or crashed with a NULL pointer dereference,
> -depending on the key type. (The former applied to the test, as it used
> -the "user" key type.) The expected behavior in this case is that the
> -syscall fail with EFAULT.
> -
> -Update the test to expect the fixed behavior from v4.12-rc5, and make
> -the test more thorough by testing additional key types, including ones
> -that caused a NULL pointer dereference in unfixed kernels.
> -
> -Signed-off-by: Eric Biggers <ebiggers@google.com>
> -Upstream-Status: Accepted [https://github.com/linux-
> test-project/ltp/commit/25045624e941ee76a13febd36187e23c6c435507]
> ----
> - testcases/kernel/syscalls/add_key/add_key02.c | 69
> ++++++++++++++++++++-------
> - 1 file changed, 51 insertions(+), 18 deletions(-)
> -
> -diff --git a/testcases/kernel/syscalls/add_key/add_key02.c
> b/testcases/kernel/syscalls/add_key/add_key02.c
> -index 866800d6f..2e3308dcd 100644
> ---- a/testcases/kernel/syscalls/add_key/add_key02.c
> -+++ b/testcases/kernel/syscalls/add_key/add_key02.c
> -@@ -1,5 +1,6 @@
> - /***********************************************************
> *******************
> - * Copyright (c) Crackerjack Project., 2007
> *
> -+ * Copyright (c) 2017 Google, Inc.
> *
> - *
> *
> - * This program is free software; you can redistribute it and/or
> modify *
> - * it under the terms of the GNU General Public License as published by
> *
> -@@ -18,10 +19,17 @@
> - ************************************************************
> ******************/
> -
> - /*
> -- * Basic test for the add_key() syscall.
> -+ * Test that the add_key() syscall correctly handles a NULL payload with
> nonzero
> -+ * length. Specifically, it should fail with EFAULT rather than oopsing
> the
> -+ * kernel with a NULL pointer dereference or failing with EINVAL, as it
> did
> -+ * before (depending on the key type). This is a regression test for
> commit
> -+ * 5649645d725c ("KEYS: fix dereferencing NULL payload with nonzero
> length").
> - *
> -- * History: Porting from Crackerjack to LTP is done by
> -- * Manas Kumar Nayak maknayak@in.ibm.com>
> -+ * Note that none of the key types that exhibited the NULL pointer
> dereference
> -+ * are guaranteed to be built into the kernel, so we just test as many
> as we
> -+ * can, in the hope of catching one. We also test with the "user" key
> type for
> -+ * good measure, although it was one of the types that failed with
> EINVAL rather
> -+ * than dereferencing NULL.
> - */
> -
> - #include "config.h"
> -@@ -33,36 +41,61 @@
> -
> - #ifdef HAVE_LINUX_KEYCTL_H
> - struct tcase {
> -- char *type;
> -- char *desc;
> -- void *payload;
> -- int plen;
> -- int exp_errno;
> -+ const char *type;
> -+ size_t plen;
> - } tcases[] = {
> -- {"user", "firstkey", NULL, 1, EINVAL}
> -+ /*
> -+ * The payload length we test for each key type needs to pass
> initial
> -+ * validation but is otherwise arbitrary. Note: the "rxrpc_s" key
> type
> -+ * requires a payload of exactly 8 bytes.
> -+ */
> -+ { "asymmetric", 64 },
> -+ { "cifs.idmap", 64 },
> -+ { "cifs.spnego", 64 },
> -+ { "pkcs7_test", 64 },
> -+ { "rxrpc", 64 },
> -+ { "rxrpc_s", 8 },
> -+ { "user", 64 },
> - };
> - #endif /* HAVE_LINUX_KEYCTL_H */
> -
> - static void verify_add_key(unsigned int i)
> - {
> - #ifdef HAVE_LINUX_KEYCTL_H
> -- TEST(tst_syscall(__NR_add_key, tcases[i].type, tcases[i].desc,
> -- tcases[i].payload, tcases[i].plen,
> -- KEY_SPEC_USER_KEYRING));
> -+ TEST(tst_syscall(__NR_add_key, tcases[i].type, "abc:def",
> -+ NULL, tcases[i].plen, KEY_SPEC_PROCESS_KEYRING));
> -
> - if (TEST_RETURN != -1) {
> -- tst_res(TFAIL, "add_key() passed unexpectedly");
> -+ tst_res(TFAIL,
> -+ "add_key() with key type '%s' unexpectedly
> succeeded",
> -+ tcases[i].type);
> - return;
> - }
> -
> -- if (TEST_ERRNO == tcases[i].exp_errno) {
> -- tst_res(TPASS | TTERRNO, "add_key() failed expectedly");
> -+ if (TEST_ERRNO == EFAULT) {
> -+ tst_res(TPASS, "received expected EFAULT with key type
> '%s'",
> -+ tcases[i].type);
> - return;
> - }
> -
> -- tst_res(TFAIL | TTERRNO,
> -- "add_key() failed unexpectedly, expected %s",
> -- tst_strerrno(tcases[i].exp_errno));
> -+ if (TEST_ERRNO == ENODEV) {
> -+ tst_res(TCONF, "kernel doesn't support key type '%s'",
> -+ tcases[i].type);
> -+ return;
> -+ }
> -+
> -+ /*
> -+ * It's possible for the "asymmetric" key type to be supported,
> but with
> -+ * no asymmetric key parsers registered. In that case, attempting
> to
> -+ * add a key of type asymmetric will fail with EBADMSG.
> -+ */
> -+ if (TEST_ERRNO == EBADMSG && !strcmp(tcases[i].type,
> "asymmetric")) {
> -+ tst_res(TCONF, "no asymmetric key parsers are registered");
> -+ return;
> -+ }
> -+
> -+ tst_res(TFAIL | TTERRNO, "unexpected error with key type '%s'",
> -+ tcases[i].type);
> - #else
> - tst_brk(TCONF, "linux/keyctl.h was missing upon compilation.");
> - #endif /* HAVE_LINUX_KEYCTL_H */
> ---
> -2.13.0
> -
> diff --git a/meta/recipes-extended/ltp/ltp_20170516.bb
> b/meta/recipes-extended/ltp/ltp_20170516.bb
> index 86b8012..46c9741 100644
> --- a/meta/recipes-extended/ltp/ltp_20170516.bb
> +++ b/meta/recipes-extended/ltp/ltp_20170516.bb
> @@ -21,7 +21,7 @@ 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"
> +SRCREV = "18916a2e6d8c997b7b29dcfa9550d5a15b22ed22"
>
> SRC_URI = "git://github.com/linux-test-project/ltp.git \
> file://0001-add-_GNU_SOURCE-to-pec_listener.c.patch \
> @@ -29,7 +29,6 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \
> 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
> \
> @@ -49,9 +48,6 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \
> 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://0001-dirtyc0w-Include-stdint.h.patch \
> - file://0037-faccessat-and-fchmodat-Fix-build-warnings.patch \
> - file://0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
> \
> "
>
> S = "${WORKDIR}/git"
> @@ -69,14 +65,6 @@ 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
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
[-- Attachment #2: Type: text/html, Size: 22535 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH V2 1/1] ltp: upgrade to upstream latest commit on 20170804
2017-08-09 20:47 ` Burton, Ross
@ 2017-08-11 1:15 ` Dengke Du
0 siblings, 0 replies; 4+ messages in thread
From: Dengke Du @ 2017-08-11 1:15 UTC (permalink / raw)
To: Burton, Ross; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 20891 bytes --]
OK, I have send the fix when building with musl for the upstream:
https://github.com/linux-test-project/ltp/pull/194
still waitting.
On 2017年08月10日 04:47, Burton, Ross wrote:
> Breaks with musl:
>
> http://errors.yoctoproject.org/Errors/Details/150199/
>
> Ross
>
> On 4 August 2017 at 11:00, Dengke Du <dengke.du@windriver.com
> <mailto:dengke.du@windriver.com>> wrote:
>
> drop 4 patches because the upstream already contains them:
>
> 0001-dirtyc0w-Include-stdint.h.patch
> 0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> 0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> 0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
>
> drop the do_compile_prepend function, because the upstream already fix
> the parallel make race, we can check it here:
>
> https://github.com/linux-test-project/ltp/commit/3f385652efe811fe7491474f8513baf44cf0a12d
> <https://github.com/linux-test-project/ltp/commit/3f385652efe811fe7491474f8513baf44cf0a12d>
>
> Signed-off-by: Dengke Du <dengke.du@windriver.com
> <mailto:dengke.du@windriver.com>>
> ---
> .../ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch | 34 ------
> ...TH_MAX-undeclared-when-building-with-musl.patch | 31 -----
> ...faccessat-and-fchmodat-Fix-build-warnings.patch | 68 -----------
> ...d_key02-update-to-test-fix-for-nonempty-N.patch | 136
> ---------------------
> meta/recipes-extended/ltp/ltp_20170516.bb
> <http://ltp_20170516.bb> | 14 +--
> 5 files changed, 1 insertion(+), 282 deletions(-)
> delete mode 100644
> meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> delete mode 100644
> meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> delete mode 100644
> meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> delete mode 100644
> meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
>
> diff --git
> a/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> b/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> deleted file mode 100644
> index 5c73be4..0000000
> ---
> a/meta/recipes-extended/ltp/ltp/0001-dirtyc0w-Include-stdint.h.patch
> +++ /dev/null
> @@ -1,34 +0,0 @@
> -From 1b30d8dac1a37dc0abbb3b545db2824d6489e23f Mon Sep 17 00:00:00
> 2001
> -From: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
> -Date: Fri, 9 Jun 2017 09:32:13 -0700
> -Subject: [PATCH] dirtyc0w: Include stdint.h
> -
> -uintptr_t is defined in stdint.h
> -
> -Fixes
> -| dirtyc0w_child.c:76:15: error: 'uintptr_t' undeclared (first
> use in this function); did you mean 'intptr_t'?
> -| lseek(mfd, (uintptr_t) map, SEEK_SET);
> -| ^~~~~~~~~
> -
> -Signed-off-by: Khem Raj <raj.khem@gmail.com
> <mailto:raj.khem@gmail.com>>
> ----
> -Upstream-Status: Submitted
> -
> - testcases/kernel/security/dirtyc0w/dirtyc0w_child.c | 1 +
> - 1 file changed, 1 insertion(+)
> -
> -diff --git a/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> b/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> -index 5328a9bc4..49abdd6ba 100644
> ---- a/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> -+++ b/testcases/kernel/security/dirtyc0w/dirtyc0w_child.c
> -@@ -23,6 +23,7 @@
> - #include <sys/stat.h>
> - #include <string.h>
> - #include <stdlib.h>
> -+#include <stdint.h>
> - #include <pwd.h>
> -
> - #include "tst_safe_pthread.h"
> ---
> -2.13.1
> -
> diff --git
> a/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> b/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> deleted file mode 100644
> index 020ddfe..0000000
> ---
> a/meta/recipes-extended/ltp/ltp/0006-fix-PATH_MAX-undeclared-when-building-with-musl.patch
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -From b906ec2fe4711a727e198cd9259287c042eef8e2 Mon Sep 17 00:00:00
> 2001
> -From: Dengke Du <dengke.du@windriver.com
> <mailto:dengke.du@windriver.com>>
> -Date: Thu, 9 Feb 2017 16:41:12 +0800
> -Subject: [PATCH] fix PATH_MAX undeclared when building with musl
> -
> -fix PATH_MAX undeclared when building with musl.
> -
> -Upstream-Status: Submitted
> [https://github.com/linux-test-project/ltp/pull/176
> <https://github.com/linux-test-project/ltp/pull/176>]
> -
> -Signed-off-by: Dengke Du <dengke.du@windriver.com
> <mailto:dengke.du@windriver.com>>
> ----
> - include/tst_test.h | 3 +++
> - 1 file changed, 3 insertions(+)
> -
> -diff --git a/include/tst_test.h b/include/tst_test.h
> -index 335c82684..4dfa1511b 100644
> ---- a/include/tst_test.h
> -+++ b/include/tst_test.h
> -@@ -23,6 +23,9 @@
> - #endif /* __TEST_H__ */
> -
> - #include <unistd.h>
> -+#ifndef __GLIBC__
> -+#include <limits.h>
> -+#endif
> -
> - #include "tst_common.h"
> - #include "tst_res_flags.h"
> ---
> -2.11.0
> -
> diff --git
> a/meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> b/meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> deleted file mode 100644
> index 99497d6..0000000
> ---
> a/meta/recipes-extended/ltp/ltp/0037-faccessat-and-fchmodat-Fix-build-warnings.patch
> +++ /dev/null
> @@ -1,68 +0,0 @@
> -From 4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647 Mon Sep 17 00:00:00
> 2001
> -From: Naresh Kamboju <naresh.kamboju@linaro.org
> <mailto:naresh.kamboju@linaro.org>>
> -Date: Mon, 19 Jun 2017 19:01:21 +0530
> -Subject: [PATCH 1/7] faccessat and fchmodat: Fix build warnings
> -MIME-Version: 1.0
> -Content-Type: text/plain; charset=UTF-8
> -Content-Transfer-Encoding: 8bit
> -
> -Fixing below build warnings.
> -
> -ltp-full-20170516/testcases/kernel/syscalls/faccessat$ make
> -In file included from ../../../../include/old/test.h:51:0,
> - from faccessat01.c:44:
> -faccessat01.c: In function ‘setup’:
> -../../../../include/old/old_safe_file_ops.h:55:27:
> -warning: format not a string literal and no format arguments
> [-Wformat-security]
> - (path), (fmt), ## __VA_ARGS__)
> - ^
> -faccessat01.c:132:2: note: in expansion of macro ‘SAFE_FILE_PRINTF’
> - SAFE_FILE_PRINTF(cleanup, testfile, testfile);
> - ^
> -../../../../include/old/old_safe_file_ops.h:55:27:
> -warning: format not a string literal and no format arguments
> [-Wformat-security]
> - (path), (fmt), ## __VA_ARGS__)
> - ^
> -faccessat01.c:133:2: note: in expansion of macro ‘SAFE_FILE_PRINTF’
> - SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
> -
> -Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org
> <mailto:naresh.kamboju@linaro.org>>
> -Upstream-Status: Accepted
> [https://github.com/linux-test-project/ltp/commit/4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647
> <https://github.com/linux-test-project/ltp/commit/4141bdb441f7576a2e73abeb2a0fb1c7b8bd8647>]
> ----
> - testcases/kernel/syscalls/faccessat/faccessat01.c | 4 ++--
> - testcases/kernel/syscalls/fchmodat/fchmodat01.c | 4 ++--
> - 2 files changed, 4 insertions(+), 4 deletions(-)
> -
> -diff --git a/testcases/kernel/syscalls/faccessat/faccessat01.c
> b/testcases/kernel/syscalls/faccessat/faccessat01.c
> -index 622dfd3b0..def7fa755 100644
> ---- a/testcases/kernel/syscalls/faccessat/faccessat01.c
> -+++ b/testcases/kernel/syscalls/faccessat/faccessat01.c
> -@@ -129,8 +129,8 @@ void setup(void)
> - fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY);
> - fds[1] = fds[4] = fds[0];
> -
> -- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
> -- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
> -+ SAFE_FILE_PRINTF(cleanup, testfile, "%s", testfile);
> -+ SAFE_FILE_PRINTF(cleanup, testfile2, "%s", testfile2);
> -
> - fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR,
> 0600);
> -
> -diff --git a/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> b/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> -index 6bf66d8b8..7856ed3fa 100644
> ---- a/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> -+++ b/testcases/kernel/syscalls/fchmodat/fchmodat01.c
> -@@ -127,8 +127,8 @@ void setup(void)
> - fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY);
> - fds[1] = fds[4] = fds[0];
> -
> -- SAFE_FILE_PRINTF(cleanup, testfile, testfile);
> -- SAFE_FILE_PRINTF(cleanup, testfile2, testfile2);
> -+ SAFE_FILE_PRINTF(cleanup, testfile, "%s", testfile);
> -+ SAFE_FILE_PRINTF(cleanup, testfile2, "%s", testfile2);
> -
> - fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR,
> 0600);
> - fds[3] = 100;
> ---
> -2.13.0
> -
> diff --git
> a/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
> b/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
> deleted file mode 100644
> index 3759e1f..0000000
> ---
> a/meta/recipes-extended/ltp/ltp/0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
> +++ /dev/null
> @@ -1,136 +0,0 @@
> -From 25045624e941ee76a13febd36187e23c6c435507 Mon Sep 17 00:00:00
> 2001
> -From: Eric Biggers <ebiggers@google.com <mailto:ebiggers@google.com>>
> -Date: Mon, 12 Jun 2017 11:55:21 -0700
> -Subject: [PATCH 01/39] syscalls/add_key02: update to test fix for
> nonempty
> - NULL payload
> -
> -add_key02 was supposed to be a "Basic test for the add_key()
> syscall",
> -but it actually happened to test the obscure case of passing a NULL
> -payload with nonzero length. This case was mishandled by the kernel,
> -which either returned EINVAL or crashed with a NULL pointer
> dereference,
> -depending on the key type. (The former applied to the test, as
> it used
> -the "user" key type.) The expected behavior in this case is that the
> -syscall fail with EFAULT.
> -
> -Update the test to expect the fixed behavior from v4.12-rc5, and make
> -the test more thorough by testing additional key types, including
> ones
> -that caused a NULL pointer dereference in unfixed kernels.
> -
> -Signed-off-by: Eric Biggers <ebiggers@google.com
> <mailto:ebiggers@google.com>>
> -Upstream-Status: Accepted
> [https://github.com/linux-test-project/ltp/commit/25045624e941ee76a13febd36187e23c6c435507
> <https://github.com/linux-test-project/ltp/commit/25045624e941ee76a13febd36187e23c6c435507>]
> ----
> - testcases/kernel/syscalls/add_key/add_key02.c | 69
> ++++++++++++++++++++-------
> - 1 file changed, 51 insertions(+), 18 deletions(-)
> -
> -diff --git a/testcases/kernel/syscalls/add_key/add_key02.c
> b/testcases/kernel/syscalls/add_key/add_key02.c
> -index 866800d6f..2e3308dcd 100644
> ---- a/testcases/kernel/syscalls/add_key/add_key02.c
> -+++ b/testcases/kernel/syscalls/add_key/add_key02.c
> -@@ -1,5 +1,6 @@
> -
> /******************************************************************************
> - * Copyright (c) Crackerjack Project., 2007 *
> -+ * Copyright (c) 2017 Google, Inc. *
> - * *
> - * This program is free software; you can redistribute it
> and/or modify *
> - * it under the terms of the GNU General Public License as
> published by *
> -@@ -18,10 +19,17 @@
> -
> ******************************************************************************/
> -
> - /*
> -- * Basic test for the add_key() syscall.
> -+ * Test that the add_key() syscall correctly handles a NULL
> payload with nonzero
> -+ * length. Specifically, it should fail with EFAULT rather than
> oopsing the
> -+ * kernel with a NULL pointer dereference or failing with
> EINVAL, as it did
> -+ * before (depending on the key type). This is a regression
> test for commit
> -+ * 5649645d725c ("KEYS: fix dereferencing NULL payload with
> nonzero length").
> - *
> -- * History: Porting from Crackerjack to LTP is done by
> -- * Manas Kumar Nayak maknayak@in.ibm.com
> <mailto:maknayak@in.ibm.com>>
> -+ * Note that none of the key types that exhibited the NULL
> pointer dereference
> -+ * are guaranteed to be built into the kernel, so we just test
> as many as we
> -+ * can, in the hope of catching one. We also test with the
> "user" key type for
> -+ * good measure, although it was one of the types that failed
> with EINVAL rather
> -+ * than dereferencing NULL.
> - */
> -
> - #include "config.h"
> -@@ -33,36 +41,61 @@
> -
> - #ifdef HAVE_LINUX_KEYCTL_H
> - struct tcase {
> -- char *type;
> -- char *desc;
> -- void *payload;
> -- int plen;
> -- int exp_errno;
> -+ const char *type;
> -+ size_t plen;
> - } tcases[] = {
> -- {"user", "firstkey", NULL, 1, EINVAL}
> -+ /*
> -+ * The payload length we test for each key type needs to
> pass initial
> -+ * validation but is otherwise arbitrary. Note: the
> "rxrpc_s" key type
> -+ * requires a payload of exactly 8 bytes.
> -+ */
> -+ { "asymmetric", 64 },
> -+ { "cifs.idmap", 64 },
> -+ { "cifs.spnego", 64 },
> -+ { "pkcs7_test", 64 },
> -+ { "rxrpc", 64 },
> -+ { "rxrpc_s", 8 },
> -+ { "user", 64 },
> - };
> - #endif /* HAVE_LINUX_KEYCTL_H */
> -
> - static void verify_add_key(unsigned int i)
> - {
> - #ifdef HAVE_LINUX_KEYCTL_H
> -- TEST(tst_syscall(__NR_add_key, tcases[i].type, tcases[i].desc,
> -- tcases[i].payload, tcases[i].plen,
> -- KEY_SPEC_USER_KEYRING));
> -+ TEST(tst_syscall(__NR_add_key, tcases[i].type, "abc:def",
> -+ NULL, tcases[i].plen,
> KEY_SPEC_PROCESS_KEYRING));
> -
> - if (TEST_RETURN != -1) {
> -- tst_res(TFAIL, "add_key() passed unexpectedly");
> -+ tst_res(TFAIL,
> -+ "add_key() with key type '%s' unexpectedly
> succeeded",
> -+ tcases[i].type);
> - return;
> - }
> -
> -- if (TEST_ERRNO == tcases[i].exp_errno) {
> -- tst_res(TPASS | TTERRNO, "add_key() failed
> expectedly");
> -+ if (TEST_ERRNO == EFAULT) {
> -+ tst_res(TPASS, "received expected EFAULT with key
> type '%s'",
> -+ tcases[i].type);
> - return;
> - }
> -
> -- tst_res(TFAIL | TTERRNO,
> -- "add_key() failed unexpectedly, expected %s",
> -- tst_strerrno(tcases[i].exp_errno));
> -+ if (TEST_ERRNO == ENODEV) {
> -+ tst_res(TCONF, "kernel doesn't support key type '%s'",
> -+ tcases[i].type);
> -+ return;
> -+ }
> -+
> -+ /*
> -+ * It's possible for the "asymmetric" key type to be
> supported, but with
> -+ * no asymmetric key parsers registered. In that case,
> attempting to
> -+ * add a key of type asymmetric will fail with EBADMSG.
> -+ */
> -+ if (TEST_ERRNO == EBADMSG && !strcmp(tcases[i].type,
> "asymmetric")) {
> -+ tst_res(TCONF, "no asymmetric key parsers are
> registered");
> -+ return;
> -+ }
> -+
> -+ tst_res(TFAIL | TTERRNO, "unexpected error with key type
> '%s'",
> -+ tcases[i].type);
> - #else
> - tst_brk(TCONF, "linux/keyctl.h was missing upon
> compilation.");
> - #endif /* HAVE_LINUX_KEYCTL_H */
> ---
> -2.13.0
> -
> diff --git a/meta/recipes-extended/ltp/ltp_20170516.bb
> <http://ltp_20170516.bb>
> b/meta/recipes-extended/ltp/ltp_20170516.bb <http://ltp_20170516.bb>
> index 86b8012..46c9741 100644
> --- a/meta/recipes-extended/ltp/ltp_20170516.bb
> <http://ltp_20170516.bb>
> +++ b/meta/recipes-extended/ltp/ltp_20170516.bb
> <http://ltp_20170516.bb>
> @@ -21,7 +21,7 @@ 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"
> +SRCREV = "18916a2e6d8c997b7b29dcfa9550d5a15b22ed22"
>
> SRC_URI = "git://github.com/linux-test-project/ltp.git
> <http://github.com/linux-test-project/ltp.git> \
> file://0001-add-_GNU_SOURCE-to-pec_listener.c.patch \
> @@ -29,7 +29,6 @@ SRC_URI =
> "git://github.com/linux-test-project/ltp.git
> <http://github.com/linux-test-project/ltp.git> \
> 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
> \
> @@ -49,9 +48,6 @@ SRC_URI =
> "git://github.com/linux-test-project/ltp.git
> <http://github.com/linux-test-project/ltp.git> \
> 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://0001-dirtyc0w-Include-stdint.h.patch \
> -
> file://0037-faccessat-and-fchmodat-Fix-build-warnings.patch \
> -
> file://0038-syscalls-add_key02-update-to-test-fix-for-nonempty-N.patch
> \
> "
>
> S = "${WORKDIR}/git"
> @@ -69,14 +65,6 @@ 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 <http://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
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> <mailto:Openembedded-core@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> <http://lists.openembedded.org/mailman/listinfo/openembedded-core>
>
>
[-- Attachment #2: Type: text/html, Size: 31005 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-08-11 1:16 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-04 10:00 [PATCH V2 0/1] ltp: upgrade to upstream latest commit on 20170804 Dengke Du
2017-08-04 10:00 ` [PATCH V2 1/1] " Dengke Du
2017-08-09 20:47 ` Burton, Ross
2017-08-11 1:15 ` Dengke Du
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.