All of lore.kernel.org
 help / color / mirror / Atom feed
* [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces
@ 2021-11-19  7:45 Joerg Vehlow
  2021-11-19  7:45 ` [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning Joerg Vehlow
                   ` (11 more replies)
  0 siblings, 12 replies; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp

Hi,

this set of patches removed all compiler warnings (at least fog gcc10),
for all tests in openposix/conformance/interfaces.
I fixed some real issues in separate patches and a lot of similar problems
in bulk patches.
For two categories of warnings I used pragma diagnostic:
 - nonnull: Two nonnull warnings are triggered, where the test is used
   to explicitly test passing NULL. The only way to fix this warning, is
   to supress it.
 - unused-result for write in signal handlers: There is no good way,
   to handle a failing write-call in a signal handler. Most of the time,
   the test is exited anyway, so supressing the warning seems like the best fix.

While these pragmas are gcc specific IIRC they also work for clang.

Joerg



-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 14:34   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting Joerg Vehlow
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

generate-makefiles.sh gave the following warning:
conformance/interfaces/pthread_create/15-1.c should be test.

The script has a strange implementation, that just greps for "main" in the c file.
Based on that it decides if the file should be a test or a run-test.
Other tests in the suite including the main-function from testfrmw/threads_scenarii.c
also use a comment, that supresses the message

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_create/15-1.c                 | 1 +
 1 file changed, 1 insertion(+)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/15-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/15-1.c
index e8c003fd4..a05db679b 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/15-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/15-1.c
@@ -76,6 +76,7 @@
 /***********************************    Test cases  *****************************************/
 /********************************************************************************************/
 
+/* main is defined in the next file */
 #define STD_MAIN
 #include "../testfrmw/threads_scenarii.c"
 
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
  2021-11-19  7:45 ` [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 14:44   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 03/12] posix/pthread_create/*: Remove unused variable Joerg Vehlow
                   ` (9 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

In case mq_receive failed, the whole test could still return PASS/FAIL

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/mq_send/5-1.c                    | 3 +--
 .../conformance/interfaces/mq_timedsend/5-1.c               | 6 ++++--
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mq_send/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/mq_send/5-1.c
index a2b3025d4..174e4f69e 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mq_send/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mq_send/5-1.c
@@ -68,7 +68,6 @@ int main(void)
 	char msgrcd[BUFFER];
 	const char *msgptr = MSGSTR;
 	struct mq_attr attr;
-	int unresolved = 0;
 	unsigned pri;
 
 	sprintf(gqname, "/mq_send_5-1_%d", getpid());
@@ -128,7 +127,7 @@ int main(void)
 		/* receive one message and allow child's mq_send to complete */
 		if (mq_receive(gqueue, msgrcd, BUFFER, &pri) == -1) {
 			perror("mq_receive() did not return success");
-			unresolved = 1;
+			return cleanup_for_exit(gqueue, gqname, PTS_UNRESOLVED);
 		}
 
 		/* child has 5 seconds to call mq_send() again and notify us */
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
index fb4a81fef..371cdbcd4 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
@@ -58,7 +58,6 @@ int main(void)
 	char msgrcd[BUFFER];
 	const char *msgptr = MSGSTR;
 	struct mq_attr attr;
-	int unresolved = 0;
 	unsigned pri;
 
 	sprintf(gqname, "/mq_timedsend_5-1_%d", getpid());
@@ -119,7 +118,10 @@ int main(void)
 		/* receive message and allow blocked send to complete */
 		if (mq_receive(gqueue, msgrcd, BUFFER, &pri) == -1) {
 			perror("mq_receive() did not return success");
-			unresolved = 1;
+			kill(pid, SIGKILL);	//kill child
+			mq_close(gqueue);
+			mq_unlink(gqname);
+			return PTS_UNRESOLVED;
 		}
 
 		if (sleep(3) == 0) {
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 03/12] posix/pthread_create/*: Remove unused variable
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
  2021-11-19  7:45 ` [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning Joerg Vehlow
  2021-11-19  7:45 ` [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 14:51   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw Joerg Vehlow
                   ` (8 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

While pad was supposed to speed up stack growth, the test
works without it and it was propably optimized out anyway.

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_create/1-5.c                | 3 ---
 .../conformance/interfaces/pthread_create/3-2.c                | 2 --
 2 files changed, 5 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-5.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-5.c
index c4756ab6f..33c5b5cb6 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-5.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-5.c
@@ -100,12 +100,9 @@
 static void *overflow(void *arg)
 {
 	void *current;
-	void *pad[50];		/* We want to consume the stack quickly */
 	long stacksize = sysconf(_SC_THREAD_STACK_MIN);	/* make sure we touch the current stack memory */
 	int ret = 0;
 
-	pad[1] = NULL;		/* so compiler stops complaining about unused variables */
-
 	if (arg == NULL) {
 		/* first call */
 		current = overflow(&current);
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c
index a508fc45e..433ccd8fe 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c
@@ -108,10 +108,8 @@ static sem_t semsync[2];		/* These semaphores will only be used in child process
 static void *overflow(void *arg)
 {
 	void *current;
-	void *pad[50];		/* We want to consume the stack quickly */
 	long stacksize = sysconf(_SC_THREAD_STACK_MIN);	/* make sure we touch the current stack memory */
 
-	pad[1] = NULL;		/* so compiler stops complaining about unused variables */
 	int ret = 0;
 
 	if (arg == NULL) {
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (2 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 03/12] posix/pthread_create/*: Remove unused variable Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 15:07   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings Joerg Vehlow
                   ` (7 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

Thre is a global variable sc in testfrmw/threads_scenarii, that is used,
if the integrated main function (STD_MAIN) is used. However some tests
did not use this integrated main, but still used the variable. To be able to
get rid of all warnings, the variable is duplicated into these tests and only
defined by threads_scenarii, if STD_MAIN is defined

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_create/14-1.c              | 2 ++
 .../conformance/interfaces/pthread_create/3-2.c               | 2 ++
 .../conformance/interfaces/pthread_detach/1-2.c               | 2 ++
 .../conformance/interfaces/pthread_detach/2-2.c               | 1 +
 .../conformance/interfaces/pthread_detach/4-3.c               | 1 +
 .../conformance/interfaces/pthread_exit/6-1.c                 | 1 +
 .../conformance/interfaces/pthread_join/1-2.c                 | 2 ++
 .../conformance/interfaces/pthread_join/4-1.c                 | 1 +
 .../conformance/interfaces/pthread_join/6-3.c                 | 1 +
 .../conformance/interfaces/testfrmw/threads_scenarii.c        | 4 ++--
 10 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/14-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/14-1.c
index c21860ba8..84d229afc 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/14-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/14-1.c
@@ -47,6 +47,8 @@ static volatile long sleep_time;
 /* number of pthread_create scenarios tested */
 static unsigned long count_ope;
 
+static unsigned int sc;
+
 static unsigned long long current_time_usec(void)
 {
 	struct timeval now;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c
index 433ccd8fe..3197bdf67 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/3-2.c
@@ -104,6 +104,8 @@
 
 static sem_t semsync[2];		/* These semaphores will only be used in child process! */
 
+static unsigned int sc;
+
 /* The overflow function is used to test the stack overflow */
 static void *overflow(void *arg)
 {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/1-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/1-2.c
index a6eb391ef..28a7e9ea9 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/1-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/1-2.c
@@ -91,6 +91,8 @@
 /***********************************    Real Test   *****************************************/
 /********************************************************************************************/
 
+static unsigned int sc;
+
 static void *threaded(void *arg)
 {
 	int ret = 0;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/2-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/2-2.c
index 8a406fe44..a2c5cc657 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/2-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/2-2.c
@@ -93,6 +93,7 @@
 /********************************************************************************************/
 
 static sem_t sem_sync;
+static unsigned int sc;
 
 static void *threaded(void *arg)
 {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/4-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/4-3.c
index fc3a50bef..126f5aa82 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/4-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_detach/4-3.c
@@ -61,6 +61,7 @@ static sem_t semsig1;
 static unsigned long count_sig;
 static long sleep_time;
 static sigset_t usersigs;
+static unsigned int sc;
 
 struct thestruct {
 	int sig;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/6-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/6-1.c
index b21e43d7b..639e508c2 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/6-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/6-1.c
@@ -98,6 +98,7 @@
 /* This will be used to control that atexit() has been called */
 static int *ctl;
 static long mf;
+static unsigned int sc;
 
 static void clnp(void)
 {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/1-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/1-2.c
index 34c410967..25e623fdb 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/1-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/1-2.c
@@ -48,6 +48,8 @@
 
 #include "../testfrmw/threads_scenarii.c"
 
+static unsigned int sc;
+
 static void *threaded(void *arg)
 {
 	int ret = 0;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/4-1.c
index b7bc56eac..6b19992ba 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/4-1.c
@@ -46,6 +46,7 @@
 #include "../testfrmw/threads_scenarii.c"
 
 static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER;
+static unsigned int sc;
 
 /* 1st thread function */
 static void *threaded(void *arg PTS_ATTRIBUTE_UNUSED)
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/6-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/6-3.c
index 7325defc3..ecf0498fa 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/6-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_join/6-3.c
@@ -56,6 +56,7 @@ static unsigned long count_sig;
 #endif
 
 static sigset_t usersigs;
+static unsigned int sc;
 
 struct thestruct {
 	int sig;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/testfrmw/threads_scenarii.c b/testcases/open_posix_testsuite/conformance/interfaces/testfrmw/threads_scenarii.c
index baf30a87c..645aff604 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/testfrmw/threads_scenarii.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/testfrmw/threads_scenarii.c
@@ -482,10 +482,10 @@ static void scenar_fini(void)
 	}
 }
 
-static unsigned int sc;
-
 #ifdef STD_MAIN
 
+static unsigned int sc;
+
 static void *threaded(void *arg);
 
 int main(void)
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (3 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 15:23   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 06/12] posix/conformance/interfaces: Fix all unused function warnings Joerg Vehlow
                   ` (6 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

Either by marking them as unused or by removing them, if there is no sideffect.

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/aio_read/9-1.c                     | 3 +--
 .../conformance/interfaces/aio_write/7-1.c                    | 3 +--
 .../open_posix_testsuite/conformance/interfaces/fork/7-1.c    | 2 +-
 .../conformance/interfaces/pthread_cond_init/2-1.c            | 2 +-
 .../conformance/interfaces/pthread_exit/2-2.c                 | 2 +-
 .../conformance/interfaces/pthread_exit/3-2.c                 | 2 +-
 .../conformance/interfaces/pthread_mutex_init/3-1.c           | 4 ++--
 .../conformance/interfaces/pthread_mutex_timedlock/4-1.c      | 4 +---
 .../conformance/interfaces/pthread_mutex_timedlock/5-1.c      | 4 +---
 .../conformance/interfaces/pthread_mutex_timedlock/5-2.c      | 4 +---
 .../conformance/interfaces/pthread_mutex_timedlock/5-3.c      | 4 +---
 .../conformance/interfaces/pthread_mutex_trylock/4-3.c        | 1 -
 .../conformance/interfaces/pthread_mutex_unlock/2-1.c         | 4 ++--
 .../conformance/interfaces/pthread_mutexattr_setpshared/1-1.c | 2 --
 .../conformance/interfaces/pthread_once/4-1-buildonly.c       | 3 ++-
 15 files changed, 16 insertions(+), 28 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
index e1ae59e3b..cd1aa0318 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
@@ -48,7 +48,6 @@ int main(void)
 	int i;
 	struct aiocb aiocbs[NUM_AIOCBS];
 	int last_req;
-	int err;
 	int ret;
 
 	if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L
@@ -85,7 +84,7 @@ int main(void)
 	}
 
 	for (i = 0; i < last_req - 1; i++) {
-		err = aio_error(&aiocbs[i]);
+		aio_error(&aiocbs[i]);
 		ret = aio_return(&aiocbs[i]);
 
 	}
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c
index 277573a38..52c8d7004 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c
@@ -48,7 +48,6 @@ int main(void)
 	int i;
 	struct aiocb aiocbs[NUM_AIOCBS];
 	int last_req;
-	int err;
 	int ret;
 
 	if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L
@@ -79,7 +78,7 @@ int main(void)
 	}
 
 	for (i = 0; i < last_req - 1; i++) {
-		err = aio_error(&aiocbs[i]);
+		aio_error(&aiocbs[i]);
 		ret = aio_return(&aiocbs[i]);
 
 	}
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
index aaf1403f9..9a0b148d9 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
@@ -51,7 +51,7 @@
 
 static void read_catalog(nl_catd cat, char *who)
 {
-	char *msg = NULL;
+	char *msg PTS_ATTRIBUTE_UNUSED = NULL;
 	int i, j;
 
 #if VERBOSE > 0
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c
index 4a60f7098..fbb7c68ff 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c
@@ -14,7 +14,7 @@
 #include <stdio.h>
 #include "posixtest.h"
 
-static pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
+static pthread_cond_t cond PTS_ATTRIBUTE_UNUSED = PTHREAD_COND_INITIALIZER;
 
 int main(void)
 {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
index 2fc3ff700..16c658f73 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
@@ -92,7 +92,7 @@
 static int global = 0;
 static int tab[3];
 
-#define CLEANUP(n) static void clnp##n(void * arg)\
+#define CLEANUP(n) static void clnp##n(void * arg PTS_ATTRIBUTE_UNUSED)\
 {\
 	tab[global]=n; \
 	global++; \
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
index 5fa6c8b50..4437ffc77 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
@@ -94,7 +94,7 @@ static int global = 0;
 static int tab[4];
 static pthread_key_t tld[3];
 
-#define CLEANUP(n) static void clnp##n(void * arg)\
+#define CLEANUP(n) static void clnp##n(void * arg PTS_ATTRIBUTE_UNUSED)\
 {\
 	tab[global]=n; \
 	global++; \
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c
index 9ee86a5db..8a9b989f1 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c
@@ -5,7 +5,7 @@
  * of this license, see the COPYING file at the top level of this
  * source tree.
 
- * Test that the macro PTHREAD_MUTEX_INITIALIZER can be sued to intiailize
+ * Test that the macro PTHREAD_MUTEX_INITIALIZER can be used to initialize
  * mutexes that are statically allocated.
  *
  */
@@ -20,7 +20,7 @@ typedef struct my_data {
 	int value;		/* Access protected by mutex */
 } my_data_t;
 
-static my_data_t data = { PTHREAD_MUTEX_INITIALIZER, 0 };
+static my_data_t data PTS_ATTRIBUTE_UNUSED = { PTHREAD_MUTEX_INITIALIZER, 0 };
 
 int main(void)
 {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c
index a7099688b..d3c0bdae9 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c
@@ -32,9 +32,7 @@ static void *f1(void *parm);
 static int ret;			/* Save return value of
 				   pthread_mutex_timedlock(). */
 static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
-static time_t currsec1, currsec2;	/* Variables for saving time before
-				   and afer locking the mutex using
-				   pthread_mutex_timedlock(). */
+
 /****************************
  *
  * MAIN()
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c
index 077bfe76d..f51106bdf 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c
@@ -40,9 +40,7 @@ static void *f1(void *parm);
 static int ret;			/* Save return value of
 				   pthread_mutex_timedlock(). */
 static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
-static time_t currsec1, currsec2;	/* Variables for saving time before
-				   and afer locking the mutex using
-				   pthread_mutex_timedlock(). */
+
 /****************************
  *
  * MAIN()
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c
index 0eda6e58f..afca84eed 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c
@@ -40,9 +40,7 @@ static void *f1(void *parm);
 static int ret;			/* Save return value of
 				   pthread_mutex_timedlock(). */
 static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
-static time_t currsec1, currsec2;	/* Variables for saving time before
-				   and afer locking the mutex using
-				   pthread_mutex_timedlock(). */
+
 /****************************
  *
  * MAIN()
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c
index baf429503..a5f8b3383 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c
@@ -36,9 +36,7 @@ static void *f1(void *parm);
 static int ret;			/* Save return value of
 				   pthread_mutex_timedlock(). */
 static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
-static time_t currsec1, currsec2;	/* Variables for saving time before
-				   and afer locking the mutex using
-				   pthread_mutex_timedlock(). */
+
 /****************************
  *
  * MAIN()
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c
index e7e86bfa8..2145bde8a 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c
@@ -103,7 +103,6 @@ static struct _scenar {
 #define NSCENAR (sizeof(scenarii)/sizeof(scenarii[0]))
 
 static char do_it = 1;
-static char woken = 0;
 static unsigned long count_ope = 0;
 #ifdef WITH_SYNCHRO
 static sem_t semsig1;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c
index 27f0ee3d7..39dacb73e 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c
@@ -39,13 +39,13 @@ static int value;			/* value protected by mutex */
 
 int main(void)
 {
-	int i, rc;
+	int i;
 	pthread_t threads[THREAD_NUM];
 
 	/* Create threads */
 	fprintf(stderr, "Creating %d threads\n", THREAD_NUM);
 	for (i = 0; i < THREAD_NUM; ++i)
-		rc = pthread_create(&threads[i], NULL, func, NULL);
+		pthread_create(&threads[i], NULL, func, NULL);
 
 	/* Wait to join all threads */
 	for (i = 0; i < THREAD_NUM; ++i)
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c
index 909b53bf4..8e8617bbd 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c
@@ -37,8 +37,6 @@
 #include <stdio.h>
 #include "posixtest.h"
 
-static pthread_mutex_t new_mutex;	/* The mutex. */
-
 int main(void)
 {
 	pthread_mutexattr_t mta;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c
index 6e519962b..d3392f908 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c
@@ -11,5 +11,6 @@
    */
 
 #include <pthread.h>
+#include "posixtest.h"
 
-static pthread_once_t dummy = PTHREAD_ONCE_INIT;
+static pthread_once_t dummy PTS_ATTRIBUTE_UNUSED = PTHREAD_ONCE_INIT;
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 06/12] posix/conformance/interfaces: Fix all unused function warnings
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (4 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 15:27   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 07/12] posix/pthread_key_create/2-1: Remove invalid part of test Joerg Vehlow
                   ` (5 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_attr_setstack/6-1.c   | 6 ------
 .../conformance/interfaces/pthread_attr_setstack/7-1.c   | 6 ------
 .../interfaces/pthread_attr_setstacksize/4-1.c           | 6 ------
 .../conformance/interfaces/pthread_exit/4-1.c            | 9 ++-------
 .../conformance/interfaces/pthread_exit/5-1.c            | 7 +------
 .../conformance/interfaces/pthread_kill/8-1.c            | 8 --------
 .../conformance/interfaces/pthread_mutex_lock/1-1.c      | 4 ++--
 .../conformance/interfaces/pthread_sigmask/18-1.c        | 8 --------
 8 files changed, 5 insertions(+), 49 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/6-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/6-1.c
index 5eac212f9..d298c30ec 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/6-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/6-1.c
@@ -31,12 +31,6 @@
 static void *stack_addr;
 static size_t stack_size;
 
-static void *thread_func()
-{
-	pthread_exit(0);
-	return NULL;
-}
-
 int main(void)
 {
 	pthread_attr_t attr;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/7-1.c
index bc7f4f415..932fa8200 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstack/7-1.c
@@ -32,12 +32,6 @@
 static void *stack_addr;
 static size_t stack_size;
 
-static void *thread_func()
-{
-	pthread_exit(0);
-	return NULL;
-}
-
 int main(void)
 {
 	pthread_attr_t attr;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstacksize/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstacksize/4-1.c
index b229d7052..800913a66 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstacksize/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_attr_setstacksize/4-1.c
@@ -28,12 +28,6 @@
 
 #define STACKSIZE PTHREAD_STACK_MIN - sysconf(_SC_PAGE_SIZE)
 
-static void *thread_func()
-{
-	pthread_exit(0);
-	return NULL;
-}
-
 int main(void)
 {
 	pthread_attr_t attr;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c
index 1252d5619..810df0c34 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c
@@ -91,12 +91,7 @@
 
 static int global = 0;
 
-/* atexit() routines */
-static void at1(void)
-{
-	global +=1;
-}
-
+/* atexit() routine */
 static void at2(void)
 {
 	global +=2;
@@ -107,7 +102,7 @@ static void *threaded(void *arg PTS_ATTRIBUTE_UNUSED)
 {
 	int ret = 0;
 
-	/* Note that this funtion will be registered once again for each scenario.
+	/* Note that this function will be registered once again for each scenario.
 	   POSIX requires the ability to register at least 32 functions so it should
 	   not be an issue in our case, as long as we don't get more than 32 scenarii
 	   (with joinable threads) */
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c
index 730b751eb..69d5c6a97 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c
@@ -91,12 +91,7 @@
 static int atctl = 0;
 static pthread_key_t tld[3];
 
-/* atexit() routines */
-static void at1(void)
-{
-	atctl += 1;
-}
-
+/* atexit() routine */
 static void at2(void)
 {
 	atctl += 2;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_kill/8-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_kill/8-1.c
index 086a0cf5c..b61a08173 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_kill/8-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_kill/8-1.c
@@ -153,14 +153,6 @@ static void sighdl2(int sig PTS_ATTRIBUTE_UNUSED)
 #endif
 }
 
-static int init_ctl;
-/* Init function */
-static void initializer(void)
-{
-	init_ctl++;
-	return;
-}
-
 /* Test function -- calls pthread_kill() and checks that EINTR is never returned. */
 static void *test(void *arg PTS_ATTRIBUTE_UNUSED)
 {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_lock/1-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_lock/1-1.c
index 913251914..4fccbfdf4 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_lock/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_lock/1-1.c
@@ -36,7 +36,7 @@ static int value;			/* value protected by mutex */
 
 int main(void)
 {
-	int i, rc;
+	int i;
 	pthread_attr_t pta;
 	pthread_t threads[THREAD_NUM];
 	//pthread_t           self = pthread_self();
@@ -47,7 +47,7 @@ int main(void)
 	/* Create threads */
 	fprintf(stderr, "Creating %d threads\n", THREAD_NUM);
 	for (i = 0; i < THREAD_NUM; ++i)
-		rc = pthread_create(&threads[i], &pta, f1, NULL);
+		pthread_create(&threads[i], &pta, f1, NULL);
 
 	/* Wait to join all threads */
 	for (i = 0; i < THREAD_NUM; ++i)
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c
index 81ba4ea9b..5801e0e60 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c
@@ -153,14 +153,6 @@ static void sighdl2(int sig PTS_ATTRIBUTE_UNUSED)
 #endif
 }
 
-static int init_ctl;
-/* Init function */
-static void initializer(void)
-{
-	init_ctl++;
-	return;
-}
-
 /* Test function -- calls pthread_sigmask() and checks that EINTR is never returned. */
 static void *test(void *arg PTS_ATTRIBUTE_UNUSED)
 {
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 07/12] posix/pthread_key_create/2-1: Remove invalid part of test
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (5 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 06/12] posix/conformance/interfaces: Fix all unused function warnings Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 15:32   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 08/12] posix/asctime: Fix potentioal buffer overflow Joerg Vehlow
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

The first step accroding to the test description is: "Create a key", but the
code was "get the value for an unitialized key". This was undefined behavior.

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_key_create/2-1.c        | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_key_create/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_key_create/2-1.c
index f150f3443..51c89f376 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_key_create/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_key_create/2-1.c
@@ -28,13 +28,6 @@ int main(void)
 	pthread_key_t key;
 	void *rc;
 
-	/* Verify that the value associated with "key" in a new thread is NULL */
-	rc = pthread_getspecific(key);
-	if (rc != NULL) {
-		printf("Test FAILED\n");
-		return PTS_FAIL;
-	}
-
 	if (pthread_key_create(&key, NULL) != 0) {
 		printf("Error: pthread_key_create() failed\n");
 		return PTS_UNRESOLVED;
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 08/12] posix/asctime: Fix potentioal buffer overflow
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (6 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 07/12] posix/pthread_key_create/2-1: Remove invalid part of test Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 15:33   ` Cyril Hrubis
  2021-11-19  7:45 ` [LTP] [PATCH 09/12] posix/conformance/interfaces/pthread_*_destroy: Suppress nonnull warning Joerg Vehlow
                   ` (3 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

The buffer used in the sprintf was too small and could overflow.

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../open_posix_testsuite/conformance/interfaces/asctime/1-1.c   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/asctime/1-1.c b/testcases/open_posix_testsuite/conformance/interfaces/asctime/1-1.c
index bc3095081..8463d953d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/asctime/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/asctime/1-1.c
@@ -28,7 +28,7 @@ int main(void)
 {
 	struct tm time_ptr;
 
-	char expected[26];
+	char expected[128];
 	char *real;
 
 	char wday_name[7][3] =
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 09/12] posix/conformance/interfaces/pthread_*_destroy: Suppress nonnull warning
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (7 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 08/12] posix/asctime: Fix potentioal buffer overflow Joerg Vehlow
@ 2021-11-19  7:45 ` Joerg Vehlow
  2021-11-19 15:35   ` Cyril Hrubis
  2021-11-19  7:46 ` [LTP] [PATCH 10/12] posix/conformance/interfaces: Fix all sign-compare warnings Joerg Vehlow
                   ` (2 subsequent siblings)
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:45 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

These two tests are specifically testing passing NULL to the functions,
so we supress the error message at least for gcc.

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_condattr_destroy/4-1.c      | 3 +++
 .../conformance/interfaces/pthread_mutexattr_destroy/4-1.c     | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_condattr_destroy/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_condattr_destroy/4-1.c
index d0aa32f8a..6205d8d29 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_condattr_destroy/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_condattr_destroy/4-1.c
@@ -15,6 +15,9 @@
  *
  */
 
+/* This test explicitly tries to pass null to a parameter, that should not be NULL */
+#pragma GCC diagnostic ignored "-Wnonnull"
+
 #include <pthread.h>
 #include <stdio.h>
 #include <errno.h>
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_destroy/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_destroy/4-1.c
index 094739030..cad698012 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_destroy/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_destroy/4-1.c
@@ -15,6 +15,9 @@
  *
  */
 
+/* This test explicitly tries to pass null to a parameter, that should not be NULL */
+#pragma GCC diagnostic ignored "-Wnonnull"
+
 #include <pthread.h>
 #include <stdio.h>
 #include <errno.h>
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 10/12] posix/conformance/interfaces: Fix all sign-compare warnings
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (8 preceding siblings ...)
  2021-11-19  7:45 ` [LTP] [PATCH 09/12] posix/conformance/interfaces/pthread_*_destroy: Suppress nonnull warning Joerg Vehlow
@ 2021-11-19  7:46 ` Joerg Vehlow
  2021-11-19 15:37   ` Cyril Hrubis
  2021-11-19  7:46 ` [LTP] [PATCH 11/12] posix/conformance/interface/mmap/5-1: Remove invalid static Joerg Vehlow
  2021-11-19  7:46 ` [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings Joerg Vehlow
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:46 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/pthread_exit/1-2.c                  | 2 +-
 .../conformance/interfaces/pthread_exit/2-2.c                  | 3 ++-
 .../conformance/interfaces/pthread_exit/3-2.c                  | 3 ++-
 .../conformance/interfaces/pthread_exit/4-1.c                  | 2 +-
 .../conformance/interfaces/pthread_exit/5-1.c                  | 3 ++-
 .../conformance/interfaces/pthread_mutex_trylock/1-2.c         | 2 +-
 .../conformance/interfaces/pthread_mutex_trylock/2-1.c         | 2 +-
 .../conformance/interfaces/pthread_sigmask/18-1.c              | 2 +-
 .../conformance/interfaces/pthread_sigmask/7-1.c               | 3 ++-
 9 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/1-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/1-2.c
index 82be6f982..c9931e295 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/1-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/1-2.c
@@ -105,7 +105,7 @@ int main(void)
 	int ret = 0;
 	void *rval;
 	pthread_t child;
-	int i;
+	unsigned int i;
 
 	output_init();
 
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
index 16c658f73..7098e2e5d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
@@ -123,7 +123,8 @@ int main(void)
 	int ret = 0;
 	void *rval;
 	pthread_t child;
-	int i, j;
+	unsigned int i;
+	int j;
 
 	output_init();
 
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
index 4437ffc77..0a8583fad 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
@@ -149,7 +149,8 @@ int main(void)
 	int ret = 0;
 	void *rval;
 	pthread_t child;
-	int i, j;
+	unsigned int i;
+	int j;
 
 	output_init();
 
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c
index 810df0c34..33e5562ca 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/4-1.c
@@ -122,7 +122,7 @@ int main(void)
 	int ret = 0;
 	void *rval;
 	pthread_t child;
-	int i;
+	unsigned int i;
 
 	output_init();
 
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c
index 69d5c6a97..e35dbef99 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/5-1.c
@@ -141,7 +141,8 @@ int main(void)
 	int ctl = 0;
 	void *rval;
 	pthread_t child;
-	int i, j;
+	unsigned int i;
+	int j;
 
 	output_init();
 
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/1-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/1-2.c
index 7901115f0..a3d8c4864 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/1-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/1-2.c
@@ -149,7 +149,7 @@ static void *tf(void *arg)
 int main(void)
 {
 	int ret;
-	int sc;
+	unsigned int sc;
 	pthread_mutexattr_t ma;
 
 	testdata_t *td;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/2-1.c
index 203d03cb5..038cf94f0 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/2-1.c
@@ -126,7 +126,7 @@ static void *tf(void *arg)
 int main(void)
 {
 	int ret;
-	int sc;
+	unsigned int sc;
 	pthread_mutexattr_t ma;
 
 	testdata_t *td;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c
index 5801e0e60..f303e9854 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/18-1.c
@@ -158,7 +158,7 @@ static void *test(void *arg PTS_ATTRIBUTE_UNUSED)
 {
 	int ret = 0;
 	sigset_t set;
-	int i, j = 0;
+	unsigned int i, j = 0;
 	int signals[] = { SIGBUS, SIGKILL, SIGABRT, SIGCHLD, SIGHUP };
 #define NSIG (sizeof(signals)/sizeof(int))
 	int operation[] = { SIG_SETMASK, SIG_BLOCK, SIG_UNBLOCK };
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/7-1.c
index aa9c6b96e..79cdefd99 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_sigmask/7-1.c
@@ -24,7 +24,8 @@ returned by the pthread_sigmask functions.
 static void *a_thread_func()
 {
 	sigset_t oactl, tempset;
-	int i, j, test_failed = 0;
+	unsigned int i, j;
+	int test_failed = 0;
 
 	int siglist[] = { SIGABRT, SIGALRM, SIGBUS, SIGCHLD,
 		SIGCONT, SIGFPE, SIGHUP, SIGILL, SIGINT,
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 11/12] posix/conformance/interface/mmap/5-1: Remove invalid static
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (9 preceding siblings ...)
  2021-11-19  7:46 ` [LTP] [PATCH 10/12] posix/conformance/interfaces: Fix all sign-compare warnings Joerg Vehlow
@ 2021-11-19  7:46 ` Joerg Vehlow
  2021-11-19 15:38   ` Cyril Hrubis
  2021-11-19  7:46 ` [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings Joerg Vehlow
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:46 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

A storage class specifier for a struct definition has no effect

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../open_posix_testsuite/conformance/interfaces/mmap/5-1.c      | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mmap/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/mmap/5-1.c
index bcb330da6..ad7b6bb2d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mmap/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mmap/5-1.c
@@ -34,7 +34,7 @@
 #include "posixtest.h"
 #include "tempfile.h"
 
-static struct testcase {
+struct testcase {
 	int prot;
 	int flags;
 };
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings
  2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
                   ` (10 preceding siblings ...)
  2021-11-19  7:46 ` [LTP] [PATCH 11/12] posix/conformance/interface/mmap/5-1: Remove invalid static Joerg Vehlow
@ 2021-11-19  7:46 ` Joerg Vehlow
  2021-11-19 15:43   ` Cyril Hrubis
  11 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-19  7:46 UTC (permalink / raw)
  To: ltp; +Cc: Joerg Vehlow

From: Joerg Vehlow <joerg.vehlow@aox-tech.de>

The warnings for writes in signalhandlers can only be suppressed,
there is no good way to handle an error there. In all other locations
a failing function is printed and PTS_UNRESOLVED returned.

Signed-off-by: Joerg Vehlow <joerg.vehlow@aox-tech.de>
---
 .../conformance/interfaces/clock_getcpuclockid/5-1.c  | 10 ++++++++--
 .../conformance/interfaces/fork/7-1.c                 |  3 ++-
 .../conformance/interfaces/kill/2-2.c                 |  5 ++++-
 .../conformance/interfaces/kill/3-1.c                 |  5 ++++-
 .../conformance/interfaces/mmap/11-2.c                |  5 +++++
 .../conformance/interfaces/mmap/11-3.c                |  5 +++++
 .../conformance/interfaces/mmap/18-1.c                |  6 +++++-
 .../conformance/interfaces/mq_open/16-1.c             |  8 ++++++--
 .../conformance/interfaces/pthread_create/1-3.c       | 11 +++++++++--
 .../conformance/interfaces/sched_setparam/2-1.c       |  5 ++++-
 .../conformance/interfaces/sched_setparam/2-2.c       |  5 ++++-
 .../conformance/interfaces/sched_yield/1-1.c          |  9 ++++++---
 .../conformance/interfaces/shm_open/26-2.c            |  9 ++++++---
 .../conformance/interfaces/shm_unlink/8-1.c           |  3 ++-
 .../conformance/interfaces/shm_unlink/9-1.c           |  6 ++++--
 .../conformance/interfaces/sigaction/19-1.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-10.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-11.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-12.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-13.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-14.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-15.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-16.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-17.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-18.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-19.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-2.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-20.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-21.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-22.c          |  8 ++++++--
 .../conformance/interfaces/sigaction/19-23.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-24.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-25.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-26.c          |  9 +++++++--
 .../conformance/interfaces/sigaction/19-3.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-4.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-5.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-6.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-7.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-8.c           |  9 +++++++--
 .../conformance/interfaces/sigaction/19-9.c           |  9 +++++++--
 .../conformance/interfaces/sigaltstack/9-1.c          |  5 ++++-
 testcases/open_posix_testsuite/include/affinity.h     |  3 ++-
 43 files changed, 261 insertions(+), 75 deletions(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/clock_getcpuclockid/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/clock_getcpuclockid/5-1.c
index 0046d5066..2e9961a19 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/clock_getcpuclockid/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/clock_getcpuclockid/5-1.c
@@ -35,8 +35,14 @@ int main(void)
 
 		pwd = getpwnam("nobody");
 		if (pwd != NULL) {
-			setgid(pwd->pw_gid);
-			setuid(pwd->pw_uid);
+			if (setgid(pwd->pw_gid)) {
+				perror("setgid");
+				return PTS_UNRESOLVED;
+			}
+			if (setuid(pwd->pw_uid)) {
+				perror("setuid");
+				return PTS_UNRESOLVED;
+			}
 		}
 	}
 
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
index 9a0b148d9..46350b7f0 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
@@ -157,7 +157,8 @@ int main(void)
 	if (ret != 0)
 		UNRESOLVED(errno, "Failed to close the message catalog");
 
-	system("rm -f " MESSCAT_IN " " MESSCAT_OUT);
+	unlink(MESSCAT_IN);
+	unlink(MESSCAT_OUT);
 
 #if VERBOSE > 0
 	output("Test passed\n");
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/kill/2-2.c b/testcases/open_posix_testsuite/conformance/interfaces/kill/2-2.c
index dd566831c..1cd3b2fdc 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/kill/2-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/kill/2-2.c
@@ -55,7 +55,10 @@ int main(void)
 	 */
 	/* this is added incase user is root. If user is normal user, then it
 	 * has no effect on the tests */
-	setuid(1);
+	if (setuid(1)) {
+		perror("setuid");
+		return PTS_UNRESOLVED;
+	}
 
 	if (-1 == kill(1, 0)) {
 		if (EPERM == errno) {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/kill/3-1.c b/testcases/open_posix_testsuite/conformance/interfaces/kill/3-1.c
index a5999332b..70a8c590c 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/kill/3-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/kill/3-1.c
@@ -23,7 +23,10 @@ int main(void)
 {
 	/* this is added incase user is root. If user is normal user, then it
 	 * has no effect on the tests */
-	setuid(1);
+	if (setuid(1)) {
+		perror("setuid");
+		return PTS_UNRESOLVED;
+	}
 
 	if (kill(1, 0) != -1) {
 		printf
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c b/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
index d63949418..27bfec8ca 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
@@ -33,6 +33,9 @@
 #include "posixtest.h"
 #include "tempfile.h"
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
 #define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
 
 static void sigbus_handler(int signum)
@@ -44,6 +47,8 @@ static void sigbus_handler(int signum)
 	}
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 #ifndef _POSIX_MEMORY_PROTECTION
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-3.c b/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-3.c
index 073b64ef9..704049290 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-3.c
@@ -31,6 +31,9 @@
 #include <unistd.h>
 #include "posixtest.h"
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
 #define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
 
 static void sigbus_handler(int signum)
@@ -42,6 +45,8 @@ static void sigbus_handler(int signum)
 	}
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 #ifndef _POSIX_MEMORY_PROTECTION
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mmap/18-1.c b/testcases/open_posix_testsuite/conformance/interfaces/mmap/18-1.c
index 113d01b8c..02fc73d80 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mmap/18-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mmap/18-1.c
@@ -131,7 +131,11 @@ int main(void)
 		printf("Got EAGAIN: %s\n", strerror(errno));
 		printf("Test PASSED\n");
 		/* Change user to root */
-		seteuid(0);
+		if (seteuid(0)) {
+			close(fd);
+			perror("seteuid");
+			return PTS_UNRESOLVED;
+		}
 		close(fd);
 		munmap(pa, len);
 		return PTS_PASS;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/mq_open/16-1.c b/testcases/open_posix_testsuite/conformance/interfaces/mq_open/16-1.c
index eee55a748..ecbfb0f79 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/mq_open/16-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/mq_open/16-1.c
@@ -61,10 +61,14 @@ int main(void)
 		printf(TNAME " Error at open(): %s\n", strerror(errno));
 		return PTS_UNRESOLVED;
 	}
-	/* file is empty now, will cause "Bus error" */
-	write(fd, fname, sizeof(int));
 	unlink(fname);
 
+	if (ftruncate(fd, sizeof(int))) {
+		perror("ftruncate");
+		close(fd);
+		return PTS_UNRESOLVED;
+	}
+
 	pa = mmap(NULL, sizeof(int), PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
 	if (pa == MAP_FAILED) {
 		printf(TNAME " Error at mmap: %s\n", strerror(errno));
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-3.c
index 30fcfe0e9..d24810dce 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_create/1-3.c
@@ -10,8 +10,8 @@
  *
  * Steps:
  * 1.  Create a new thread that will go into a never-ending while loop.
- * 2.  If the thread is truly asynchronise, then the main function will
- *     continue instead of waiting for the thread to return (which in never
+ * 2.  If the thread is truly asynchronous, then the main function will
+ *     continue instead of waiting for the thread to return (which it never
  *     does in this test case).
  * 3.  An alarm is set to go off (i.e. send the SIGARLM signal) after 3
  *     seconds. This is done for 'timeing-out' reasons, in case main DOES
@@ -30,6 +30,8 @@
 static void *a_thread_function();
 static void alarm_handler();
 
+static volatile int alarm_triggered;
+
 static pthread_t a;
 
 int main(void)
@@ -72,6 +74,9 @@ static void *a_thread_function()
 	return NULL;
 }
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
 #define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
 
 /* If this handler is called, that means that the test has failed. */
@@ -80,3 +85,5 @@ static void alarm_handler()
 	WRITE("Test FAILED: Alarm fired while waiting for cancelation\n");
 	_exit(PTS_FAIL);
 }
+
+#pragma GCC diagnostic pop
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-1.c
index da56343d0..fb19ff6a4 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-1.c
@@ -125,7 +125,10 @@ int main(void)
 		return PTS_UNRESOLVED;
 	}
 
-	pipe(the_pipe);
+	if (pipe(the_pipe)) {
+		perror("pipe");
+		return PTS_UNRESOLVED;
+	}
 
 	for (i = 0; i < nb_child; i++) {
 		child_pid[i] = fork();
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-2.c b/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-2.c
index 6f10618b6..6c68120c3 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sched_setparam/2-2.c
@@ -129,7 +129,10 @@ int main(void)
 		return PTS_UNRESOLVED;
 	}
 
-	pipe(the_pipe);
+	if (pipe(the_pipe)) {
+		perror("pipe");
+		return PTS_UNRESOLVED;
+	}
 
 	for (i = 0; i < nb_child; i++) {
 		child_pid[i] = fork();
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c b/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c
index 602733e60..2e1e3197a 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c
@@ -45,18 +45,21 @@ static int child_busy(int fd)
 	alarm(4);
 
 	/* Tell the parent we're ready */
-	write(fd, "go", 2);
+	if (write(fd, "go", 2) == -1) {
+		perror("write");
+		exit(PTS_UNRESOLVED);
+	}
 
 	for (;;) {
 		rc = sched_yield();
 		if (rc) {
 			ERR_LOG("child: sched_yield", rc);
-			exit(1);
+			exit(PTS_FAIL);
 		}
 	}
 
 	/* should not get here */
-	exit(2);
+	exit(PTS_UNRESOLVED);
 }
 
 int main(void)
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/shm_open/26-2.c b/testcases/open_posix_testsuite/conformance/interfaces/shm_open/26-2.c
index 215d3e1af..69edeae85 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/shm_open/26-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/shm_open/26-2.c
@@ -95,19 +95,22 @@ int main(void)
 	fd = shm_open(SHM_NAME, O_RDWR | O_TRUNC, 0);
 	if (fd == -1) {
 		perror("An error occurs when calling shm_open()");
-		seteuid(getuid());
+		if (seteuid(getuid()))
+			perror("seteuid");
 		shm_unlink(SHM_NAME);
 		return PTS_UNRESOLVED;
 	}
 
 	if (fstat(fd, &stat_buf) != 0) {
 		perror("An error occurs when calling fstat()");
-		seteuid(getuid());
+		if (seteuid(getuid()))
+			perror("seteuid");
 		shm_unlink(SHM_NAME);
 		return PTS_UNRESOLVED;
 	}
 
-	seteuid(getuid());
+	if (seteuid(getuid()))
+		perror("seteuid");
 	shm_unlink(SHM_NAME);
 
 	if (stat_buf.st_uid == old_uid && stat_buf.st_gid == old_gid) {
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/8-1.c b/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/8-1.c
index ed18cf213..d67d2fbe2 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/8-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/8-1.c
@@ -86,7 +86,8 @@ int main(void)
 		return PTS_UNRESOLVED;
 	}
 
-	seteuid(getuid());
+	if (seteuid(getuid()))
+		perror("seteuid");
 
 	if (fstat(fd, &stat_after) != 0) {
 		perror("An error occurs when calling fstat()");
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/9-1.c b/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/9-1.c
index 5c52465c8..9ef4b0c65 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/9-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/shm_unlink/9-1.c
@@ -69,12 +69,14 @@ int main(void)
 	result = shm_unlink(SHM_NAME);
 	if (result == -1 && errno == EACCES) {
 		printf("Test PASSED\n");
-		seteuid(getuid());
+		if (seteuid(getuid()))
+			perror("seteuid");
 		shm_unlink(SHM_NAME);
 		return PTS_PASS;
 	} else if (result == -1) {
 		perror("Unexpected error");
-		seteuid(getuid());
+		if (seteuid(getuid()))
+			perror("seteuid");
 		shm_unlink(SHM_NAME);
 		return PTS_FAIL;
 	}
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-1.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-1.c
index a038ea92a..98b7e2e9d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-1.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-10.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-10.c
index 019c98036..649a6914f 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-10.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-10.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-11.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-11.c
index 7e3545e90..e8223fb4b 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-11.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-11.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-12.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-12.c
index 123ff169d..9b46baaf0 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-12.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-12.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-13.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-13.c
index 6cfe1d7f9..944741014 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-13.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-13.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-14.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-14.c
index 9371b1bdb..3c1aa1f48 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-14.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-14.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-15.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-15.c
index 37a986d68..803851648 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-15.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-15.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-16.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-16.c
index 72446e792..e189fcd9c 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-16.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-16.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-17.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-17.c
index e6d5ba8be..67405ec35 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-17.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-17.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-18.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-18.c
index 2d3f7437f..4cd275946 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-18.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-18.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-19.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-19.c
index b124d08b8..cc13b4a04 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-19.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-19.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-2.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-2.c
index 0c7e8c698..10a06b34b 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-2.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-20.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-20.c
index f01a4c2ec..cf5c9a067 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-20.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-20.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-21.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-21.c
index 74fffa988..18c1be5ce 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-21.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-21.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-22.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-22.c
index dbe6c55a1..f9971b3f2 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-22.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-22.c
@@ -39,10 +39,12 @@
 #include <signal.h>
 #include <errno.h>
 #include "posixtest.h"
+static volatile sig_atomic_t called = 0;
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
 
-static volatile sig_atomic_t called = 0;
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
 
 static void handler(int sig, siginfo_t *info, void *context)
 {
@@ -57,6 +59,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-23.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-23.c
index e0f54d835..ec07b89dc 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-23.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-23.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-24.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-24.c
index bba928a57..fc2c87744 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-24.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-24.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-25.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-25.c
index 62ebe7390..828f1fd14 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-25.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-25.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-26.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-26.c
index c02c77397..0a666e59a 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-26.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-26.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-3.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-3.c
index 5fb8c5fad..bd4a8831d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-3.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-3.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-4.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-4.c
index 993889041..6ab0f35ee 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-4.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-4.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-5.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-5.c
index 9096ca426..a1f8ea115 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-5.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-5.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-6.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-6.c
index 3b6799a4e..ed7aeafdd 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-6.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-6.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-7.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-7.c
index 5d6b84bd3..f6ff253cd 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-7.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-7.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-8.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-8.c
index ec2649165..fe745aab9 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-8.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-8.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-9.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-9.c
index 91044863a..7e55e2722 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-9.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/19-9.c
@@ -40,10 +40,13 @@
 #include <errno.h>
 #include "posixtest.h"
 
-#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
-
 static volatile sig_atomic_t called = 0;
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-result"
+
+#define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
+
 static void handler(int sig, siginfo_t *info, void *context)
 {
 	(void) sig;
@@ -57,6 +60,8 @@ static void handler(int sig, siginfo_t *info, void *context)
 	called = 1;
 }
 
+#pragma GCC diagnostic pop
+
 int main(void)
 {
 	int ret;
diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaltstack/9-1.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaltstack/9-1.c
index 0236a752e..e9f9a8f71 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sigaltstack/9-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaltstack/9-1.c
@@ -59,7 +59,10 @@ int main(int argc, char *argv[])
 
 		/* Get abs path if needed and exec ourself */
 		if (*argv[0] != '/') {
-			getcwd(path, PATH_MAX);
+			if (getcwd(path, PATH_MAX) == NULL) {
+				perror("getcwd");
+				exit(PTS_UNRESOLVED);
+			}
 			strcat(path, "/");
 			strcat(path, argv[0]);
 		} else {
diff --git a/testcases/open_posix_testsuite/include/affinity.h b/testcases/open_posix_testsuite/include/affinity.h
index 86fb4f4c6..da7e6837e 100644
--- a/testcases/open_posix_testsuite/include/affinity.h
+++ b/testcases/open_posix_testsuite/include/affinity.h
@@ -46,7 +46,8 @@ static int get_online_cpu_from_sysfs(void)
 	f = fopen("/sys/devices/system/cpu/online", "r");
 	if (!f)
 		return -1;
-	fscanf(f, "%d", &cpu);
+	if (!fscanf(f, "%d", &cpu))
+		cpu = -1;
 	fclose(f);
 
 	return cpu;
-- 
2.25.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning
  2021-11-19  7:45 ` [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning Joerg Vehlow
@ 2021-11-19 14:34   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 14:34 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
> The script has a strange implementation, that just greps for "main" in the c file.
> Based on that it decides if the file should be a test or a run-test.
> Other tests in the suite including the main-function from testfrmw/threads_scenarii.c
> also use a comment, that supresses the message

I think that the testfrmw should be cleaned up and rewritten or even
better we should get rid of it completely in the long term...

Anyways applied, since this is simple enough.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting
  2021-11-19  7:45 ` [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting Joerg Vehlow
@ 2021-11-19 14:44   ` Cyril Hrubis
  2021-11-22  6:45     ` Joerg Vehlow
  0 siblings, 1 reply; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 14:44 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

> --- a/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
> @@ -58,7 +58,6 @@ int main(void)
>  	char msgrcd[BUFFER];
>  	const char *msgptr = MSGSTR;
>  	struct mq_attr attr;
> -	int unresolved = 0;
>  	unsigned pri;
>  
>  	sprintf(gqname, "/mq_timedsend_5-1_%d", getpid());
> @@ -119,7 +118,10 @@ int main(void)
>  		/* receive message and allow blocked send to complete */
>  		if (mq_receive(gqueue, msgrcd, BUFFER, &pri) == -1) {
>  			perror("mq_receive() did not return success");
> -			unresolved = 1;
> +			kill(pid, SIGKILL);	//kill child
> +			mq_close(gqueue);
> +			mq_unlink(gqname);
> +			return PTS_UNRESOLVED;
>  		}

There is another place where it does not clean up the queue in the code
under the if (j == MAXMSG+1) condition, that should be fixed as well.

Also I guess the cleanest way how to write this test would be a kernel
style goto cleanup. E.g.:

	int rval = PTS_UNRESOLVED;


	if (foo) {
		rval = PTS_FAIL;
		goto ret;
	}

	if (bar)
		goto ret;

	...

	pid = 0;
ret:
	if (pid)
		kill(pid, SIGKILL);
	mq_close(queue);
	mq_unlink(queue);
	return rval;
-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 03/12] posix/pthread_create/*: Remove unused variable
  2021-11-19  7:45 ` [LTP] [PATCH 03/12] posix/pthread_create/*: Remove unused variable Joerg Vehlow
@ 2021-11-19 14:51   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 14:51 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw
  2021-11-19  7:45 ` [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw Joerg Vehlow
@ 2021-11-19 15:07   ` Cyril Hrubis
  2021-11-22  6:48     ` Joerg Vehlow
  0 siblings, 1 reply; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:07 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

But still fixing warnings in the testfrmw this way feels like we are
putting a lipstick on a pig. Large scale cleanup of the code is needed
and the warnings were really harmless in this case...

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings
  2021-11-19  7:45 ` [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings Joerg Vehlow
@ 2021-11-19 15:23   ` Cyril Hrubis
  2021-11-22  6:41     ` Joerg Vehlow
  0 siblings, 1 reply; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:23 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
> index e1ae59e3b..cd1aa0318 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
> @@ -48,7 +48,6 @@ int main(void)
>  	int i;
>  	struct aiocb aiocbs[NUM_AIOCBS];
>  	int last_req;
> -	int err;
>  	int ret;
>  
>  	if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L
> @@ -85,7 +84,7 @@ int main(void)
>  	}
>  
>  	for (i = 0; i < last_req - 1; i++) {
> -		err = aio_error(&aiocbs[i]);
> +		aio_error(&aiocbs[i]);
>  		ret = aio_return(&aiocbs[i]);
>  
>  	}

Looking at the test the whole loop here is pointless, can we remove it
completely?

> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c
> index 277573a38..52c8d7004 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/7-1.c
> @@ -48,7 +48,6 @@ int main(void)
>  	int i;
>  	struct aiocb aiocbs[NUM_AIOCBS];
>  	int last_req;
> -	int err;
>  	int ret;
>  
>  	if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L
> @@ -79,7 +78,7 @@ int main(void)
>  	}
>  
>  	for (i = 0; i < last_req - 1; i++) {
> -		err = aio_error(&aiocbs[i]);
> +		aio_error(&aiocbs[i]);
>  		ret = aio_return(&aiocbs[i]);
>  
>  	}

Here as well.

> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
> index aaf1403f9..9a0b148d9 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
> @@ -51,7 +51,7 @@
>  
>  static void read_catalog(nl_catd cat, char *who)
>  {
> -	char *msg = NULL;
> +	char *msg PTS_ATTRIBUTE_UNUSED = NULL;
>  	int i, j;

I guess that in this case the test is wrong as well. It does not seem
that catgets() fails when it returns the pointer to the "not found"
string and does not even touch errno.

>  #if VERBOSE > 0
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c
> index 4a60f7098..fbb7c68ff 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_init/2-1.c
> @@ -14,7 +14,7 @@
>  #include <stdio.h>
>  #include "posixtest.h"
>  
> -static pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
> +static pthread_cond_t cond PTS_ATTRIBUTE_UNUSED = PTHREAD_COND_INITIALIZER;

This one looks fine.

>  int main(void)
>  {
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
> index 2fc3ff700..16c658f73 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/2-2.c
> @@ -92,7 +92,7 @@
>  static int global = 0;
>  static int tab[3];
>  
> -#define CLEANUP(n) static void clnp##n(void * arg)\
> +#define CLEANUP(n) static void clnp##n(void * arg PTS_ATTRIBUTE_UNUSED)\
>  {\
>  	tab[global]=n; \
>  	global++; \
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
> index 5fa6c8b50..4437ffc77 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_exit/3-2.c
> @@ -94,7 +94,7 @@ static int global = 0;
>  static int tab[4];
>  static pthread_key_t tld[3];
>  
> -#define CLEANUP(n) static void clnp##n(void * arg)\
> +#define CLEANUP(n) static void clnp##n(void * arg PTS_ATTRIBUTE_UNUSED)\
>  {\
>  	tab[global]=n; \
>  	global++; \

THese two as well.

> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c
> index 9ee86a5db..8a9b989f1 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_init/3-1.c
> @@ -5,7 +5,7 @@
>   * of this license, see the COPYING file at the top level of this
>   * source tree.
>  
> - * Test that the macro PTHREAD_MUTEX_INITIALIZER can be sued to intiailize
> + * Test that the macro PTHREAD_MUTEX_INITIALIZER can be used to initialize
>   * mutexes that are statically allocated.
>   *
>   */
> @@ -20,7 +20,7 @@ typedef struct my_data {
>  	int value;		/* Access protected by mutex */
>  } my_data_t;
>  
> -static my_data_t data = { PTHREAD_MUTEX_INITIALIZER, 0 };
> +static my_data_t data PTS_ATTRIBUTE_UNUSED = { PTHREAD_MUTEX_INITIALIZER, 0 };
>  
>  int main(void)
>  {

This one as well.

> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c
> index a7099688b..d3c0bdae9 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/4-1.c
> @@ -32,9 +32,7 @@ static void *f1(void *parm);
>  static int ret;			/* Save return value of
>  				   pthread_mutex_timedlock(). */
>  static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
> -static time_t currsec1, currsec2;	/* Variables for saving time before
> -				   and afer locking the mutex using
> -				   pthread_mutex_timedlock(). */
> +
>  /****************************
>   *
>   * MAIN()
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c
> index 077bfe76d..f51106bdf 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-1.c
> @@ -40,9 +40,7 @@ static void *f1(void *parm);
>  static int ret;			/* Save return value of
>  				   pthread_mutex_timedlock(). */
>  static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
> -static time_t currsec1, currsec2;	/* Variables for saving time before
> -				   and afer locking the mutex using
> -				   pthread_mutex_timedlock(). */
> +
>  /****************************
>   *
>   * MAIN()
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c
> index 0eda6e58f..afca84eed 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-2.c
> @@ -40,9 +40,7 @@ static void *f1(void *parm);
>  static int ret;			/* Save return value of
>  				   pthread_mutex_timedlock(). */
>  static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
> -static time_t currsec1, currsec2;	/* Variables for saving time before
> -				   and afer locking the mutex using
> -				   pthread_mutex_timedlock(). */
> +
>  /****************************
>   *
>   * MAIN()
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c
> index baf429503..a5f8b3383 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_timedlock/5-3.c
> @@ -36,9 +36,7 @@ static void *f1(void *parm);
>  static int ret;			/* Save return value of
>  				   pthread_mutex_timedlock(). */
>  static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;	/* The mutex */
> -static time_t currsec1, currsec2;	/* Variables for saving time before
> -				   and afer locking the mutex using
> -				   pthread_mutex_timedlock(). */
> +
>  /****************************
>   *
>   * MAIN()

This part as well.

> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c
> index e7e86bfa8..2145bde8a 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_trylock/4-3.c
> @@ -103,7 +103,6 @@ static struct _scenar {
>  #define NSCENAR (sizeof(scenarii)/sizeof(scenarii[0]))
>  
>  static char do_it = 1;
> -static char woken = 0;
>  static unsigned long count_ope = 0;
>  #ifdef WITH_SYNCHRO
>  static sem_t semsig1;
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c
> index 27f0ee3d7..39dacb73e 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutex_unlock/2-1.c
> @@ -39,13 +39,13 @@ static int value;			/* value protected by mutex */
>  
>  int main(void)
>  {
> -	int i, rc;
> +	int i;
>  	pthread_t threads[THREAD_NUM];
>  
>  	/* Create threads */
>  	fprintf(stderr, "Creating %d threads\n", THREAD_NUM);
>  	for (i = 0; i < THREAD_NUM; ++i)
> -		rc = pthread_create(&threads[i], NULL, func, NULL);
> +		pthread_create(&threads[i], NULL, func, NULL);
>  
>  	/* Wait to join all threads */
>  	for (i = 0; i < THREAD_NUM; ++i)

Well technically we should check the return value, but this is better
than it was before.

> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c
> index 909b53bf4..8e8617bbd 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_mutexattr_setpshared/1-1.c
> @@ -37,8 +37,6 @@
>  #include <stdio.h>
>  #include "posixtest.h"
>  
> -static pthread_mutex_t new_mutex;	/* The mutex. */
> -
>  int main(void)
>  {
>  	pthread_mutexattr_t mta;
> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c
> index 6e519962b..d3392f908 100644
> --- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_once/4-1-buildonly.c
> @@ -11,5 +11,6 @@
>     */
>  
>  #include <pthread.h>
> +#include "posixtest.h"
>  
> -static pthread_once_t dummy = PTHREAD_ONCE_INIT;
> +static pthread_once_t dummy PTS_ATTRIBUTE_UNUSED = PTHREAD_ONCE_INIT;

And these two are fine as well.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 06/12] posix/conformance/interfaces: Fix all unused function warnings
  2021-11-19  7:45 ` [LTP] [PATCH 06/12] posix/conformance/interfaces: Fix all unused function warnings Joerg Vehlow
@ 2021-11-19 15:27   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:27 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 07/12] posix/pthread_key_create/2-1: Remove invalid part of test
  2021-11-19  7:45 ` [LTP] [PATCH 07/12] posix/pthread_key_create/2-1: Remove invalid part of test Joerg Vehlow
@ 2021-11-19 15:32   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:32 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 08/12] posix/asctime: Fix potentioal buffer overflow
  2021-11-19  7:45 ` [LTP] [PATCH 08/12] posix/asctime: Fix potentioal buffer overflow Joerg Vehlow
@ 2021-11-19 15:33   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:33 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Pushed, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 09/12] posix/conformance/interfaces/pthread_*_destroy: Suppress nonnull warning
  2021-11-19  7:45 ` [LTP] [PATCH 09/12] posix/conformance/interfaces/pthread_*_destroy: Suppress nonnull warning Joerg Vehlow
@ 2021-11-19 15:35   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:35 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 10/12] posix/conformance/interfaces: Fix all sign-compare warnings
  2021-11-19  7:46 ` [LTP] [PATCH 10/12] posix/conformance/interfaces: Fix all sign-compare warnings Joerg Vehlow
@ 2021-11-19 15:37   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:37 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 11/12] posix/conformance/interface/mmap/5-1: Remove invalid static
  2021-11-19  7:46 ` [LTP] [PATCH 11/12] posix/conformance/interface/mmap/5-1: Remove invalid static Joerg Vehlow
@ 2021-11-19 15:38   ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:38 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
Applied, thanks.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings
  2021-11-19  7:46 ` [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings Joerg Vehlow
@ 2021-11-19 15:43   ` Cyril Hrubis
  2021-11-22  6:42     ` Joerg Vehlow
  0 siblings, 1 reply; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-19 15:43 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
> --- a/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
> +++ b/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
> @@ -33,6 +33,9 @@
>  #include "posixtest.h"
>  #include "tempfile.h"
>  
> +#pragma GCC diagnostic push
> +#pragma GCC diagnostic ignored "-Wunused-result"
>
>  #define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)

There is actually better trick than disabling the warning with pragmas,
we use it in lib/tst_test.c as well:

#define WRITE_MSG(msg) do { \
        if (write(STDOUT_FILENO, msg, sizeof(msg) - 1)) { \
                /* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66425 */ \
        } \
} while (0)

I guess that we should add PTS_WRITE_MSG() to the posixtest.h and make
use of it in all open posix tests.

The rest of the patch looks good.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings
  2021-11-19 15:23   ` Cyril Hrubis
@ 2021-11-22  6:41     ` Joerg Vehlow
  2021-11-22  9:43       ` Cyril Hrubis
  0 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-22  6:41 UTC (permalink / raw)
  To: Cyril Hrubis; +Cc: Joerg Vehlow, ltp

Hi Cyril,

On 11/19/2021 4:23 PM, Cyril Hrubis wrote:
> Hi!
>> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
>> index e1ae59e3b..cd1aa0318 100644
>> --- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
>> +++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/9-1.c
>> @@ -48,7 +48,6 @@ int main(void)
>>   	int i;
>>   	struct aiocb aiocbs[NUM_AIOCBS];
>>   	int last_req;
>> -	int err;
>>   	int ret;
>>   
>>   	if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L
>> @@ -85,7 +84,7 @@ int main(void)
>>   	}
>>   
>>   	for (i = 0; i < last_req - 1; i++) {
>> -		err = aio_error(&aiocbs[i]);
>> +		aio_error(&aiocbs[i]);
>>   		ret = aio_return(&aiocbs[i]);
>>   
>>   	}
> Looking at the test the whole loop here is pointless, can we remove it
> completely?
I thought the same, but I have never used aio, so I have no clue, if 
there are any side effects.
So I went for a minimal  change approach.
>> diff --git a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
>> index aaf1403f9..9a0b148d9 100644
>> --- a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
>> +++ b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
>> @@ -51,7 +51,7 @@
>>   
>>   static void read_catalog(nl_catd cat, char *who)
>>   {
>> -	char *msg = NULL;
>> +	char *msg PTS_ATTRIBUTE_UNUSED = NULL;
>>   	int i, j;
> I guess that in this case the test is wrong as well. It does not seem
> that catgets() fails when it returns the pointer to the "not found"
> string and does not even touch errno.
Yes looks like you are right. Looks like this test can never fail.

I would fix it like this in a next revision:

diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
index 46350b7f0..5c03b04ed 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/fork/7-1.c
@@ -49,33 +49,22 @@
  #define MESSCAT_IN  "messcat.txt"
  #define MESSCAT_OUT "messcat.cat"

-static void read_catalog(nl_catd cat, char *who)
+static int read_catalog(nl_catd cat)
  {
+    static const char *notfound = "not found";
      char *msg PTS_ATTRIBUTE_UNUSED = NULL;
      int i, j;

-#if VERBOSE > 0
-    output("Reading the message catalog from %s...\n", who);
-#endif
-
-    errno = 0;
-
      for (i = 1; i <= 2; i++) {
          for (j = 1; j <= 2; j++) {

-            msg = catgets(cat, i, j, "not found");
-
-            if (errno != 0)
-                UNRESOLVED(errno, "catgets returned an error");
-#if VERBOSE > 1
-            output("set %i msg %i: %s\n", i, j, msg);
-#endif
+            msg = catgets(cat, i, j, notfound);
+            if (msg == notfound) {
+                return 1;
+            }
          }
      }
-
-#if VERBOSE > 0
-    output("Message catalog read successfully in %s\n", who);
-#endif
+    return 0;
  }

  static char *messcat_in =
@@ -132,7 +121,10 @@ int main(void)
      if (messcat == (nl_catd) - 1)
          UNRESOLVED(errno, "Could not open ./" MESSCAT_OUT);

-    read_catalog(messcat, "parent");
+    if (read_catalog(messcat)) {
+        printf("UNRESOLVED: Unable to read message catalog in parent");
+        return PTS_UNRESOLVED;
+    }

      child = fork();

@@ -140,8 +132,11 @@ int main(void)
          UNRESOLVED(errno, "Failed to fork");

      if (child == 0) {
-        read_catalog(messcat, "child");
-        exit(PTS_PASS);
+        if (read_catalog(messcat)) {
+            printf("FAILED: Unable to read message catalog in child");
+            return PTS_FAIL;
+        }
+        return PTS_PASS;
      }

      ctl = waitpid(child, &status, 0);


Joerg

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings
  2021-11-19 15:43   ` Cyril Hrubis
@ 2021-11-22  6:42     ` Joerg Vehlow
  0 siblings, 0 replies; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-22  6:42 UTC (permalink / raw)
  To: Cyril Hrubis; +Cc: Joerg Vehlow, ltp

Hi Cyril,

> Hi!
>> --- a/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
>> +++ b/testcases/open_posix_testsuite/conformance/interfaces/mmap/11-2.c
>> @@ -33,6 +33,9 @@
>>   #include "posixtest.h"
>>   #include "tempfile.h"
>>   
>> +#pragma GCC diagnostic push
>> +#pragma GCC diagnostic ignored "-Wunused-result"
>>
>>   #define WRITE(str) write(STDOUT_FILENO, str, sizeof(str) - 1)
> There is actually better trick than disabling the warning with pragmas,
> we use it in lib/tst_test.c as well:
>
> #define WRITE_MSG(msg) do { \
>          if (write(STDOUT_FILENO, msg, sizeof(msg) - 1)) { \
>                  /* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66425 */ \
>          } \
> } while (0)
>
> I guess that we should add PTS_WRITE_MSG() to the posixtest.h and make
> use of it in all open posix tests.
>
> The rest of the patch looks good.
Ok I'll fix it like that. I also like one macro in posixtest.h better 
than in every file.


Joerg

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting
  2021-11-19 14:44   ` Cyril Hrubis
@ 2021-11-22  6:45     ` Joerg Vehlow
  2021-11-22  9:10       ` Cyril Hrubis
  0 siblings, 1 reply; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-22  6:45 UTC (permalink / raw)
  To: Cyril Hrubis; +Cc: Joerg Vehlow, ltp

Hi Cyril,

On 11/19/2021 3:44 PM, Cyril Hrubis wrote:
> Hi!
> Applied, thanks.
>
>> --- a/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
>> +++ b/testcases/open_posix_testsuite/conformance/interfaces/mq_timedsend/5-1.c
>> @@ -58,7 +58,6 @@ int main(void)
>>   	char msgrcd[BUFFER];
>>   	const char *msgptr = MSGSTR;
>>   	struct mq_attr attr;
>> -	int unresolved = 0;
>>   	unsigned pri;
>>   
>>   	sprintf(gqname, "/mq_timedsend_5-1_%d", getpid());
>> @@ -119,7 +118,10 @@ int main(void)
>>   		/* receive message and allow blocked send to complete */
>>   		if (mq_receive(gqueue, msgrcd, BUFFER, &pri) == -1) {
>>   			perror("mq_receive() did not return success");
>> -			unresolved = 1;
>> +			kill(pid, SIGKILL);	//kill child
>> +			mq_close(gqueue);
>> +			mq_unlink(gqname);
>> +			return PTS_UNRESOLVED;
>>   		}
> There is another place where it does not clean up the queue in the code
> under the if (j == MAXMSG+1) condition, that should be fixed as well.
>
> Also I guess the cleanest way how to write this test would be a kernel
> style goto cleanup. E.g.:
>
> 	int rval = PTS_UNRESOLVED;
>
>
> 	if (foo) {
> 		rval = PTS_FAIL;
> 		goto ret;
> 	}
>
> 	if (bar)
> 		goto ret;
>
> 	...
>
> 	pid = 0;
> ret:
> 	if (pid)
> 		kill(pid, SIGKILL);
> 	mq_close(queue);
> 	mq_unlink(queue);
> 	return rval;
You are right, but I wanted to keep changes minimal. I think there are 
lots of small bug in the posix tests,
but fixing all of them while trying to just get rid of warnings, would 
have made this patchset even bigger and
I would have never finished. So I had to stop somewhere.

Joerg

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw
  2021-11-19 15:07   ` Cyril Hrubis
@ 2021-11-22  6:48     ` Joerg Vehlow
  0 siblings, 0 replies; 31+ messages in thread
From: Joerg Vehlow @ 2021-11-22  6:48 UTC (permalink / raw)
  To: Cyril Hrubis; +Cc: Joerg Vehlow, ltp

Hi Cyril,

On 11/19/2021 4:07 PM, Cyril Hrubis wrote:
> Hi!
> Applied, thanks.
>
> But still fixing warnings in the testfrmw this way feels like we are
> putting a lipstick on a pig. Large scale cleanup of the code is needed
> and the warnings were really harmless in this case...
Yes as I wrote already, I wanted to start somewhere and the warning 
clutter hid already
some warnings, that indicated real programming errors. So I wanted to 
get rid of them.
Additionally the compiler output is to be inspected, because some test 
are just compile-time tests.

A one-shot cleanup of all tests is also probably not feasible, so 
iterative cleanup with clean warnings
should be easier.

Joerg

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting
  2021-11-22  6:45     ` Joerg Vehlow
@ 2021-11-22  9:10       ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-22  9:10 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
> You are right, but I wanted to keep changes minimal. I think there are 
> lots of small bug in the posix tests,
> but fixing all of them while trying to just get rid of warnings, would 
> have made this patchset even bigger and
> I would have never finished. So I had to stop somewhere.

Understood, looking forward to a next patchset then :-).

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings
  2021-11-22  6:41     ` Joerg Vehlow
@ 2021-11-22  9:43       ` Cyril Hrubis
  0 siblings, 0 replies; 31+ messages in thread
From: Cyril Hrubis @ 2021-11-22  9:43 UTC (permalink / raw)
  To: Joerg Vehlow; +Cc: Joerg Vehlow, ltp

Hi!
> > Looking at the test the whole loop here is pointless, can we remove it
> > completely?
> I thought the same, but I have never used aio, so I have no clue, if 
> there are any side effects.

As far as I can tell there is none. I guess that the original test
author was simply clueless, we used to have much more code that didn't
made any sense ten years ago and you can still occasionally find some...

> So I went for a minimal?? change approach.

Let's go for that for now then. It would be nice to fix it properly
later on.

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2021-11-22  9:43 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-19  7:45 [LTP] [Patch 00/12] Fix or suppress compiler warnings in posix/conformance/interfaces Joerg Vehlow
2021-11-19  7:45 ` [LTP] [PATCH 01/12] posix/pthread_create/15-1: Supress warning Joerg Vehlow
2021-11-19 14:34   ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 02/12] posix/mq_(timed)send/5-1: Fix error reporting Joerg Vehlow
2021-11-19 14:44   ` Cyril Hrubis
2021-11-22  6:45     ` Joerg Vehlow
2021-11-22  9:10       ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 03/12] posix/pthread_create/*: Remove unused variable Joerg Vehlow
2021-11-19 14:51   ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 04/12] posix/conformance/interfaces: Fix unsued-variable for testfrmw Joerg Vehlow
2021-11-19 15:07   ` Cyril Hrubis
2021-11-22  6:48     ` Joerg Vehlow
2021-11-19  7:45 ` [LTP] [PATCH 05/12] posix/conformance/interfaces: Fix all unused variable warnings Joerg Vehlow
2021-11-19 15:23   ` Cyril Hrubis
2021-11-22  6:41     ` Joerg Vehlow
2021-11-22  9:43       ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 06/12] posix/conformance/interfaces: Fix all unused function warnings Joerg Vehlow
2021-11-19 15:27   ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 07/12] posix/pthread_key_create/2-1: Remove invalid part of test Joerg Vehlow
2021-11-19 15:32   ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 08/12] posix/asctime: Fix potentioal buffer overflow Joerg Vehlow
2021-11-19 15:33   ` Cyril Hrubis
2021-11-19  7:45 ` [LTP] [PATCH 09/12] posix/conformance/interfaces/pthread_*_destroy: Suppress nonnull warning Joerg Vehlow
2021-11-19 15:35   ` Cyril Hrubis
2021-11-19  7:46 ` [LTP] [PATCH 10/12] posix/conformance/interfaces: Fix all sign-compare warnings Joerg Vehlow
2021-11-19 15:37   ` Cyril Hrubis
2021-11-19  7:46 ` [LTP] [PATCH 11/12] posix/conformance/interface/mmap/5-1: Remove invalid static Joerg Vehlow
2021-11-19 15:38   ` Cyril Hrubis
2021-11-19  7:46 ` [LTP] [PATCH 12/12] posix/interface/conformance: Fix/supress all unused-result warnings Joerg Vehlow
2021-11-19 15:43   ` Cyril Hrubis
2021-11-22  6:42     ` Joerg Vehlow

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.