From: Wanlong G. <gao...@cn...> - 2013-08-05 02:15:33
|
As the Linux signal(7) said: POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux 2.6.22; beforehand, always failed with EINTR). So, on linux, we just leave this untested when the kernel version is less than 2.6.22. Signed-off-by: Wanlong Gao <gao...@cn...> --- .../conformance/interfaces/sigaction/16-1.c | 6 +++ testcases/open_posix_testsuite/include/kvercmp.h | 56 ++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 testcases/open_posix_testsuite/include/kvercmp.h diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/16-1.c b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/16-1.c index 530b5b6..8241246 100644 --- a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/16-1.c +++ b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/16-1.c @@ -39,6 +39,7 @@ #include <signal.h> #include <errno.h> #include <posixtest.h> +#include "kvercmp.h" /* * Define an array of signals we want to test against. @@ -215,6 +216,11 @@ int main(void) struct sigaction sa; struct sigaction sa_org; +#ifdef __linux__ + if (tst_kvercmp(2, 6, 22) < 0) + return PTS_UNTESTED; +#endif + sa.sa_flags = SA_RESTART; sa.sa_handler = handler; diff --git a/testcases/open_posix_testsuite/include/kvercmp.h b/testcases/open_posix_testsuite/include/kvercmp.h new file mode 100644 index 0000000..688e34a --- /dev/null +++ b/testcases/open_posix_testsuite/include/kvercmp.h @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2003 International Business Machines Corp. + * Copyright (c) 2013 Fujitsu Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms in version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See + * the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +#ifdef __linux__ + +#include <stdlib.h> +#include <unistd.h> +#include <string.h> +#include <sys/utsname.h> + +static void get_kver(int *k1, int *k2, int *k3) +{ + struct utsname uval; + char *kver; + char *r1, *r2, *r3; + extern char *strsep(); + + uname(&uval); + kver = uval.release; + r1 = strsep(&kver, "."); + r2 = strsep(&kver, "."); + r3 = strsep(&kver, "."); + + *k1 = atoi(r1); + *k2 = atoi(r2); + *k3 = atoi(r3); +} + +static int tst_kvercmp(int r1, int r2, int r3) +{ + int a1, a2, a3; + int testver, currver; + + get_kver(&a1, &a2, &a3); + testver = (r1 << 16) + (r2 << 8) + r3; + currver = (a1 << 16) + (a2 << 8) + a3; + + return currver - testver; +} +#endif -- 1.8.4.rc0.11.g35f5eaa |
From: Peng H. <pe...@cn...> - 2013-11-14 02:29:56
|
As the Linux signal(7) said: POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux 2.6.22; beforehand, always failed with EINTR). So, on linux, we just leave this untested when the kernel version is less than 2.6.22. Signed-off-by: Peng Haitao <pe...@cn...> --- testcases/open_posix_testsuite/Makefile | 4 ++++ testcases/open_posix_testsuite/Makefile.linux | 20 ++++++++++++++++++++ .../open_posix_testsuite/scripts/tst_kvercmp.sh | 20 ++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 testcases/open_posix_testsuite/Makefile.linux create mode 100755 testcases/open_posix_testsuite/scripts/tst_kvercmp.sh diff --git a/testcases/open_posix_testsuite/Makefile b/testcases/open_posix_testsuite/Makefile index 9c61fa4..500ddc2 100644 --- a/testcases/open_posix_testsuite/Makefile +++ b/testcases/open_posix_testsuite/Makefile @@ -40,6 +40,10 @@ exec_prefix?= $(prefix) all: conformance-all functional-all stress-all tools-all +ifeq ($(shell uname -s), Linux) +include Makefile.linux +endif + clean: $(CRITICAL_MAKEFILES) @rm -f $(LOGFILE)* @for dir in $(SUBDIRS) tools; do \ diff --git a/testcases/open_posix_testsuite/Makefile.linux b/testcases/open_posix_testsuite/Makefile.linux new file mode 100644 index 0000000..de3dd0e --- /dev/null +++ b/testcases/open_posix_testsuite/Makefile.linux @@ -0,0 +1,20 @@ +all: conformance-all functional-all stress-all tools-all filter-broken + +cmd_disable = @set -e; \ + echo "Disabling: $(1)"; \ + echo "\#!/bin/sh" > $(1); \ + echo "echo $(1) skipped" >> $(1); \ + echo "echo $(2)" >> $(1); \ + echo "exit 0" >> $(1); \ + chmod a+x $(1) + +kver_cmp = $(shell $(top_srcdir)/scripts/tst_kvercmp.sh 2 6 22) +ifeq ($(kver_cmp), 1) +filter-broken: t_sigaction_16-1 +else +filter-broken: +endif + +t_sigaction_16-1: + $(call cmd_disable,conformance/interfaces/sigaction/sigaction_16-1.run-test, \ + This fails on old linux because sem_wait always be interrupted by a signal.) diff --git a/testcases/open_posix_testsuite/scripts/tst_kvercmp.sh b/testcases/open_posix_testsuite/scripts/tst_kvercmp.sh new file mode 100755 index 0000000..d0e101c --- /dev/null +++ b/testcases/open_posix_testsuite/scripts/tst_kvercmp.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +if [ $# -ne 3 ]; then + echo "Usgae: ./tst_kvercmp.sh r1 r2 r3" + exit 1 +fi + +ker_ver=$(uname -r) +r1=$(echo ${ker_ver} | awk -F. '{print $1}') +r2=$(echo ${ker_ver} | awk -F. '{print $2}') +r3=$(echo ${ker_ver} | awk -F. '{print $3}') +r3=${r3%-*} + +test_ver=$(($1 * 65536 + $2 * 256 + $3)) +curr_ver=$((${r1} * 65536 + ${r2} * 256 + ${r3})) +if [ ${curr_ver} -ge ${test_ver} ]; then + echo 0 +else + echo 1 +fi -- 1.8.3.1 |
From: Jan S. <jst...@re...> - 2013-11-14 09:33:21
|
----- Original Message ----- > From: "Peng Haitao" <pe...@cn...> > To: jst...@re..., gao...@cn... > Cc: ltp...@li... > Sent: Thursday, 14 November, 2013 3:25:07 AM > Subject: [PATCH] sigaction:16-1: leave it untested on the Linux kernel less than 2.6.22 > > As the Linux signal(7) said: > POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux > 2.6.22; beforehand, always failed with EINTR). > > So, on linux, we just leave this untested when the kernel version > is less than 2.6.22. > > Signed-off-by: Peng Haitao <pe...@cn...> Hi, looks familiar. Thanks for posting - I haven't revisited this topic since then. I suggest following change: diff --git a/testcases/open_posix_testsuite/Makefile.linux b/testcases/open_posix_testsuite/Makefile.linux index de3dd0e..4a32c07 100644 --- a/testcases/open_posix_testsuite/Makefile.linux +++ b/testcases/open_posix_testsuite/Makefile.linux @@ -8,13 +8,15 @@ cmd_disable = @set -e; \ echo "exit 0" >> $(1); \ chmod a+x $(1) +BROKEN := + kver_cmp = $(shell $(top_srcdir)/scripts/tst_kvercmp.sh 2 6 22) ifeq ($(kver_cmp), 1) -filter-broken: t_sigaction_16-1 -else -filter-broken: +BROKEN += t_sigaction_16-1 endif +filter-broken: $(BROKEN) + t_sigaction_16-1: $(call cmd_disable,conformance/interfaces/sigaction/sigaction_16-1.run-test, \ This fails on old linux because sem_wait always be interrupted by a signal.) Regards, Jan > --- > testcases/open_posix_testsuite/Makefile | 4 ++++ > testcases/open_posix_testsuite/Makefile.linux | 20 > ++++++++++++++++++++ > .../open_posix_testsuite/scripts/tst_kvercmp.sh | 20 > ++++++++++++++++++++ > 3 files changed, 44 insertions(+) > create mode 100644 testcases/open_posix_testsuite/Makefile.linux > create mode 100755 testcases/open_posix_testsuite/scripts/tst_kvercmp.sh > > diff --git a/testcases/open_posix_testsuite/Makefile > b/testcases/open_posix_testsuite/Makefile > index 9c61fa4..500ddc2 100644 > --- a/testcases/open_posix_testsuite/Makefile > +++ b/testcases/open_posix_testsuite/Makefile > @@ -40,6 +40,10 @@ exec_prefix?= $(prefix) > > all: conformance-all functional-all stress-all tools-all > > +ifeq ($(shell uname -s), Linux) > +include Makefile.linux > +endif > + > clean: $(CRITICAL_MAKEFILES) > @rm -f $(LOGFILE)* > @for dir in $(SUBDIRS) tools; do \ > diff --git a/testcases/open_posix_testsuite/Makefile.linux > b/testcases/open_posix_testsuite/Makefile.linux > new file mode 100644 > index 0000000..de3dd0e > --- /dev/null > +++ b/testcases/open_posix_testsuite/Makefile.linux > @@ -0,0 +1,20 @@ > +all: conformance-all functional-all stress-all tools-all filter-broken > + > +cmd_disable = @set -e; \ > + echo "Disabling: $(1)"; \ > + echo "\#!/bin/sh" > $(1); \ > + echo "echo $(1) skipped" >> $(1); \ > + echo "echo $(2)" >> $(1); \ > + echo "exit 0" >> $(1); \ > + chmod a+x $(1) > + > +kver_cmp = $(shell $(top_srcdir)/scripts/tst_kvercmp.sh 2 6 22) > +ifeq ($(kver_cmp), 1) > +filter-broken: t_sigaction_16-1 > +else > +filter-broken: > +endif > + > +t_sigaction_16-1: > + $(call > cmd_disable,conformance/interfaces/sigaction/sigaction_16-1.run-test, \ > + This fails on old linux because sem_wait always be interrupted by a > signal.) > diff --git a/testcases/open_posix_testsuite/scripts/tst_kvercmp.sh > b/testcases/open_posix_testsuite/scripts/tst_kvercmp.sh > new file mode 100755 > index 0000000..d0e101c > --- /dev/null > +++ b/testcases/open_posix_testsuite/scripts/tst_kvercmp.sh > @@ -0,0 +1,20 @@ > +#!/bin/bash > + > +if [ $# -ne 3 ]; then > + echo "Usgae: ./tst_kvercmp.sh r1 r2 r3" > + exit 1 > +fi > + > +ker_ver=$(uname -r) > +r1=$(echo ${ker_ver} | awk -F. '{print $1}') > +r2=$(echo ${ker_ver} | awk -F. '{print $2}') > +r3=$(echo ${ker_ver} | awk -F. '{print $3}') > +r3=${r3%-*} > + > +test_ver=$(($1 * 65536 + $2 * 256 + $3)) > +curr_ver=$((${r1} * 65536 + ${r2} * 256 + ${r3})) > +if [ ${curr_ver} -ge ${test_ver} ]; then > + echo 0 > +else > + echo 1 > +fi > -- > 1.8.3.1 > > |
From: <ch...@su...> - 2013-11-14 12:29:37
|
Hi! > As the Linux signal(7) said: > POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux 2.6.22; beforehand, always failed with EINTR). > > So, on linux, we just leave this untested when the kernel version > is less than 2.6.22. > > Signed-off-by: Peng Haitao <pe...@cn...> Again, I'm slightly against such hacks in the Open Posix Testsuite. The testsuite purpose is to check POSIX compilance, if older Linux fails because the implementaion is wrong users should see the failure. Or at least the testcases shouldn't be skipped by default. If there is enough interest in this feature we can add specific switch or make target that skips tests that are known to fail on Linux. Skipping them on default run is, in my opinion, wrong. -- Cyril Hrubis ch...@su... |
From: Jan S. <jst...@re...> - 2013-11-14 12:48:59
|
----- Original Message ----- > From: ch...@su... > To: "Peng Haitao" <pe...@cn...> > Cc: jst...@re..., gao...@cn..., ltp...@li... > Sent: Thursday, 14 November, 2013 1:29:22 PM > Subject: Re: [LTP] [PATCH] sigaction:16-1: leave it untested on the Linux kernel less than 2.6.22 > > Hi! > > As the Linux signal(7) said: > > POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux > > 2.6.22; beforehand, always failed with EINTR). > > > > So, on linux, we just leave this untested when the kernel version > > is less than 2.6.22. > > > > Signed-off-by: Peng Haitao <pe...@cn...> > > Again, I'm slightly against such hacks in the Open Posix Testsuite. The > testsuite purpose is to check POSIX compilance, if older Linux fails > because the implementaion is wrong users should see the failure. That's a valid point. > > Or at least the testcases shouldn't be skipped by default. > If there is > enough interest in this feature we can add specific switch or make > target that skips tests that are known to fail on Linux. Skipping them > on default run is, in my opinion, wrong. I don't have strong preference. I'd be OK also with a text file, which would list which ones fail, why, relevant kernel/glibc versions, etc. Regards, Jan > > -- > Cyril Hrubis > ch...@su... > |
From: <ch...@su...> - 2013-11-14 12:55:39
|
Hi! > > Or at least the testcases shouldn't be skipped by default. > > If there is > > enough interest in this feature we can add specific switch or make > > target that skips tests that are known to fail on Linux. Skipping them > > on default run is, in my opinion, wrong. > > I don't have strong preference. I'd be OK also with a text file, which would > list which ones fail, why, relevant kernel/glibc versions, etc. Or a wiki page. I would love to see more LTP documentation... -- Cyril Hrubis ch...@su... |
From: Peng H. <pe...@cn...> - 2013-11-15 09:38:07
|
On 11/14/2013 08:55 PM, ch...@su... wrote: > Hi! >>> Or at least the testcases shouldn't be skipped by default. >>> If there is >>> enough interest in this feature we can add specific switch or make >>> target that skips tests that are known to fail on Linux. Skipping them >>> on default run is, in my opinion, wrong. >> >> I don't have strong preference. I'd be OK also with a text file, which would >> list which ones fail, why, relevant kernel/glibc versions, etc. > > Or a wiki page. I would love to see more LTP documentation... > As a known bug, I think it is OK to skip the case. Although a text file or a wiki page is existent, the new users of ltp may not catch it and investigate the bug again and again. -- Best Regards, Peng |
From: Peng H. <pe...@cn...> - 2013-11-28 05:14:04
|
Hi On 11/15/2013 05:37 PM, Peng Haitao wrote: > > On 11/14/2013 08:55 PM, ch...@su... wrote: >> Hi! >>>> Or at least the testcases shouldn't be skipped by default. >>>> If there is >>>> enough interest in this feature we can add specific switch or make >>>> target that skips tests that are known to fail on Linux. Skipping them >>>> on default run is, in my opinion, wrong. >>> >>> I don't have strong preference. I'd be OK also with a text file, which would >>> list which ones fail, why, relevant kernel/glibc versions, etc. >> >> Or a wiki page. I would love to see more LTP documentation... >> > > As a known bug, I think it is OK to skip the case. > Although a text file or a wiki page is existent, the new users of ltp may > not catch it and investigate the bug again and again. > What is decision about the discuss? -- Best Regards, Peng Haitao |
From: <ch...@su...> - 2013-11-28 14:16:27
|
Hi! > >>> I don't have strong preference. I'd be OK also with a text file, which would > >>> list which ones fail, why, relevant kernel/glibc versions, etc. > >> > >> Or a wiki page. I would love to see more LTP documentation... > >> > > > > As a known bug, I think it is OK to skip the case. > > Although a text file or a wiki page is existent, the new users of ltp may > > not catch it and investigate the bug again and again. > > > > What is decision about the discuss? I wote for adding 'test_linux' make target which will skipp testcases that are expected to fail on the tested system. Anybody has different idea? -- Cyril Hrubis ch...@su... |
From: Peng H. <pe...@cn...> - 2014-01-16 06:49:34
|
On 11/28/2013 10:15 PM, ch...@su... wrote: >>> As a known bug, I think it is OK to skip the case. >>> Although a text file or a wiki page is existent, the new users of ltp may >>> not catch it and investigate the bug again and again. >>> >> >> What is decision about the discuss? > > I wote for adding 'test_linux' make target which will skipp testcases > that are expected to fail on the tested system. > I had sent v2 patch, please review it. http://sourceforge.net/p/ltp/mailman/message/31712259/ Thanks. -- Best Regards, Peng > Anybody has different idea? > -- Best Regards, Peng |
From: <ch...@su...> - 2013-08-05 09:46:52
|
Hi! > As the Linux signal(7) said: > POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux 2.6.22; beforehand, always failed with EINTR). > > So, on linux, we just leave this untested when the kernel version > is less than 2.6.22. While I'm completly fine with workarounds for broken kernels in Linux part of the LTP I'm a bit reluctant to add them into the open posix testsuite. Has anybody different opinion? -- Cyril Hrubis ch...@su... |
From: Jan S. <jst...@re...> - 2013-08-06 08:12:12
|
----- Original Message ----- > From: ch...@su... > To: "Wanlong Gao" <gao...@cn...> > Cc: "LTP" <ltp...@li...> > Sent: Monday, 5 August, 2013 11:46:48 AM > Subject: Re: [LTP] [PATCH] sigaction:16-1: leave it untested on the Linux kernel less than 2.6.22 > > Hi! > > As the Linux signal(7) said: > > POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux > > 2.6.22; beforehand, always failed with EINTR). > > > > So, on linux, we just leave this untested when the kernel version > > is less than 2.6.22. > > While I'm completly fine with workarounds for broken kernels in Linux > part of the LTP I'm a bit reluctant to add them into the open posix > testsuite. Has anybody different opinion? I agree when it comes to modifying testcases, but having a list of testcases which are known to fail (and avoid running them) on linux is also handy. How about something like top-level Makefile.linux, which would build everything as it does now, but after that it disables those which are known to fail? For example by replacing something.run-test with script that prints message and returns UNTESTED. Regards, Jan > > -- > Cyril Hrubis > ch...@su... > > ------------------------------------------------------------------------------ > Get your SQL database under version control now! > Version control is standard for application code, but databases havent > caught up. So what steps can you take to put your SQL databases under > version control? Why should you start doing it? Read more to find out. > http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk > _______________________________________________ > Ltp-list mailing list > Ltp...@li... > https://lists.sourceforge.net/lists/listinfo/ltp-list > |
From: Wanlong G. <gao...@cn...> - 2013-08-06 08:18:04
|
On 08/06/2013 04:11 PM, Jan Stancek wrote: > > > > > ----- Original Message ----- >> From: ch...@su... >> To: "Wanlong Gao" <gao...@cn...> >> Cc: "LTP" <ltp...@li...> >> Sent: Monday, 5 August, 2013 11:46:48 AM >> Subject: Re: [LTP] [PATCH] sigaction:16-1: leave it untested on the Linux kernel less than 2.6.22 >> >> Hi! >>> As the Linux signal(7) said: >>> POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux >>> 2.6.22; beforehand, always failed with EINTR). >>> >>> So, on linux, we just leave this untested when the kernel version >>> is less than 2.6.22. >> >> While I'm completly fine with workarounds for broken kernels in Linux >> part of the LTP I'm a bit reluctant to add them into the open posix >> testsuite. Has anybody different opinion? > > I agree when it comes to modifying testcases, but having a list > of testcases which are known to fail (and avoid running them) > on linux is also handy. > > How about something like top-level Makefile.linux, which would > build everything as it does now, but after that it disables > those which are known to fail? For example by replacing something.run-test > with script that prints message and returns UNTESTED. This seems a nice idea, and Makefile.linux can read a untested-cases-list from the one black-list file which we can maintain for Linux specific? Thanks, Wanlong Gao > > Regards, > Jan > >> >> -- >> Cyril Hrubis >> ch...@su... >> >> ------------------------------------------------------------------------------ >> Get your SQL database under version control now! >> Version control is standard for application code, but databases havent >> caught up. So what steps can you take to put your SQL databases under >> version control? Why should you start doing it? Read more to find out. >> http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk >> _______________________________________________ >> Ltp-list mailing list >> Ltp...@li... >> https://lists.sourceforge.net/lists/listinfo/ltp-list >> > |
From: <ch...@su...> - 2013-08-06 09:30:41
|
Hi! > > While I'm completly fine with workarounds for broken kernels in Linux > > part of the LTP I'm a bit reluctant to add them into the open posix > > testsuite. Has anybody different opinion? > > I agree when it comes to modifying testcases, but having a list > of testcases which are known to fail (and avoid running them) > on linux is also handy. > > How about something like top-level Makefile.linux, which would > build everything as it does now, but after that it disables > those which are known to fail? For example by replacing something.run-test > with script that prints message and returns UNTESTED. That sounds reasonable to me. -- Cyril Hrubis ch...@su... |
From: Wanlong G. <gao...@cn...> - 2013-08-07 08:23:38
|
On 08/06/2013 04:11 PM, Jan Stancek wrote: > > > > > ----- Original Message ----- >> From: ch...@su... >> To: "Wanlong Gao" <gao...@cn...> >> Cc: "LTP" <ltp...@li...> >> Sent: Monday, 5 August, 2013 11:46:48 AM >> Subject: Re: [LTP] [PATCH] sigaction:16-1: leave it untested on the Linux kernel less than 2.6.22 >> >> Hi! >>> As the Linux signal(7) said: >>> POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux >>> 2.6.22; beforehand, always failed with EINTR). >>> >>> So, on linux, we just leave this untested when the kernel version >>> is less than 2.6.22. >> >> While I'm completly fine with workarounds for broken kernels in Linux >> part of the LTP I'm a bit reluctant to add them into the open posix >> testsuite. Has anybody different opinion? > > I agree when it comes to modifying testcases, but having a list > of testcases which are known to fail (and avoid running them) > on linux is also handy. > > How about something like top-level Makefile.linux, which would > build everything as it does now, but after that it disables > those which are known to fail? For example by replacing something.run-test > with script that prints message and returns UNTESTED. Do you have time to cook a patch as your suggestion? Thanks, Wanlong Gao > > Regards, > Jan > >> >> -- >> Cyril Hrubis >> ch...@su... >> >> ------------------------------------------------------------------------------ >> Get your SQL database under version control now! >> Version control is standard for application code, but databases havent >> caught up. So what steps can you take to put your SQL databases under >> version control? Why should you start doing it? Read more to find out. >> http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk >> _______________________________________________ >> Ltp-list mailing list >> Ltp...@li... >> https://lists.sourceforge.net/lists/listinfo/ltp-list >> > |
From: Jan S. <jst...@re...> - 2013-08-07 09:19:47
|
----- Original Message ----- > From: "Wanlong Gao" <gao...@cn...> > To: "Jan Stancek" <jst...@re...> > Cc: ch...@su..., "LTP" <ltp...@li...> > Sent: Wednesday, 7 August, 2013 10:23:27 AM > Subject: Re: [LTP] [PATCH] sigaction:16-1: leave it untested on the Linux kernel less than 2.6.22 > > On 08/06/2013 04:11 PM, Jan Stancek wrote: > > > > > > > > > > ----- Original Message ----- > >> From: ch...@su... > >> To: "Wanlong Gao" <gao...@cn...> > >> Cc: "LTP" <ltp...@li...> > >> Sent: Monday, 5 August, 2013 11:46:48 AM > >> Subject: Re: [LTP] [PATCH] sigaction:16-1: leave it untested on the Linux > >> kernel less than 2.6.22 > >> > >> Hi! > >>> As the Linux signal(7) said: > >>> POSIX semaphore interfaces: sem_wait(3) and sem_timedwait(3) (since Linux > >>> 2.6.22; beforehand, always failed with EINTR). > >>> > >>> So, on linux, we just leave this untested when the kernel version > >>> is less than 2.6.22. > >> > >> While I'm completly fine with workarounds for broken kernels in Linux > >> part of the LTP I'm a bit reluctant to add them into the open posix > >> testsuite. Has anybody different opinion? > > > > I agree when it comes to modifying testcases, but having a list > > of testcases which are known to fail (and avoid running them) > > on linux is also handy. > > > > How about something like top-level Makefile.linux, which would > > build everything as it does now, but after that it disables > > those which are known to fail? For example by replacing something.run-test > > with script that prints message and returns UNTESTED. > > Do you have time to cook a patch as your suggestion? Not very likely this week, since other tasks have more priority. Anyway to continue discussion or as starting point here's what I had in mind: # cat Makefile.linux include Makefile all: conformance-all functional-all stress-all tools-all filter-broken cmd_disable = @set -e; \ echo "Disabling: $(1)"; \ echo "\#!/bin/sh" > $(1); \ echo "echo $(1) skipped" >> $(1); \ echo "echo $(2)" >> $(1); \ echo "exit 0" >> $(1); \ chmod a+x $(1) filter-broken: t_sigaction_16-1 t_sigaction_16-1: $(call cmd_disable,conformance/interfaces/sigaction/sigaction_16-1.run-test,\ This fails on linux because...) # make -f Makefile.linux all ... # ./conformance/interfaces/sigaction/sigaction_16-1.run-test conformance/interfaces/sigaction/sigaction_16-1.run-test skipped This fails on linux because... Kernel version check shouldn't be hard to do. Do we also have some which depend on glibc version? Regards, Jan > > Thanks, > Wanlong Gao > > > > > Regards, > > Jan > > > >> > >> -- > >> Cyril Hrubis > >> ch...@su... > >> > >> ------------------------------------------------------------------------------ > >> Get your SQL database under version control now! > >> Version control is standard for application code, but databases havent > >> caught up. So what steps can you take to put your SQL databases under > >> version control? Why should you start doing it? Read more to find out. > >> http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk > >> _______________________________________________ > >> Ltp-list mailing list > >> Ltp...@li... > >> https://lists.sourceforge.net/lists/listinfo/ltp-list > >> > > > > |