From: Bian Naimeng <biannm@cn.fujitsu.com>
To: Mitani <mitani@ryobi.co.jp>
Cc: ltp-list@lists.sourceforge.net
Subject: Re: [LTP] [PATCH] fix "sigaction" tests
Date: Thu, 18 Nov 2010 15:50:31 +0800 [thread overview]
Message-ID: <4CE4DAC7.5080608@cn.fujitsu.com> (raw)
In-Reply-To: <000001cb86ed$d4984070$7dc8c150$@co.jp>
>> testcases/open_posix_testsuite/conformance/interfaces/sigaction/
>>>>>>>> #./gentests.pl
>>>>>>>> ------------
>>>>>>>>
>>>>>>>> Similar revisions are necessary for other 25 "sigaction" tests.
>>>>>>> Sorry, but Linux-isms can't leak into the open_posix_testsuite.
>>>>>>> Same with BSDisms (at least they shouldn't... if they do, then slap
>> me
>>>>>>> or whoever did the commit).
>>>>>> Do you mean the culprit is Linux-isms?
>>>>> Mitani-san is proposing that I `fix' the testcases to work on RHEL
>>>>> 4.8. These testcases should function with minimal change for all
>>>>> versions of Unix.
>>>>>
>>>> This open_posix_suite is the part of LTP(linux test project), must
>> we
>>>> make sure it can work at all versions of unix?
>>> I use it in FreeBSD and others have used it in other versions of Unix
>>> (in the past), based on the README. There's no reason why we need to
>>> maintain something that philosophically diverges from the upstream
>>> project's goal because it will make merging more painful and
>>> unnecessary.
>>>
>> OK, i get it. Thanks. ^_^
>>
>> Then, whether should we remove the following case, because it invokes
>> the uname that it's not exsit at 4.3 BSD.
>> conformance/interfaces/pthread_mutex_init/speculative/5-2.c
>>
>> Thanks
>> Bian
>>
>>>> What about this patch? If you think so, other similar patchs will
>> be post.
>>>>
>> --------------------------------------------------------------------
>> -----------
>>>> At older linux kernel(2.6.22 before), a signal handler always
>> interrupts a
>>>> blocked call to one of these functions, regardless of the use of the
>> sigaction
>>>> SA_RESTART flag, so we should not test these cases at this situation.
>>>>
>>>> Althought uname is not exsit at 4.3 BSD, but this open_posix_suite
>> just
>>>> the part of LTP(linux test project), so i think it's not a problem.
>>>>
>>>> Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
>>>>
>>>> ---
>>>> .../conformance/interfaces/sigaction/16-1.c | 27
>> ++++++++++++++++++++
>>>> 1 files changed, 27 insertions(+), 0 deletions(-)
>>>>
>>>> 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 706dbfc..3d6e1a1 100644
>>>> ---
>> a/testcases/open_posix_testsuite/conformance/interfaces/sigaction/16
>> -1.c
>>>> +++
>> b/testcases/open_posix_testsuite/conformance/interfaces/sigaction/16
>> -1.c
>>>> @@ -50,6 +50,7 @@ Anyway, a false negative status cannot be returned.
>>>> #include <stdlib.h>
>>>> #include <string.h>
>>>> #include <unistd.h>
>>>> +#include <sys/utsname.h>
>>>>
>>>> #include <semaphore.h>
>>>> #include <signal.h>
>>>> @@ -95,6 +96,27 @@ Anyway, a false negative status cannot be returned.
>>>> volatile sig_atomic_t caught = 0;
>>>> sem_t sem;
>>>>
>>>> +#define KERNEL_VERSION(a, b, c) (((a) << 16) + ((b) << 8) +
>> (c))
>>>> +
>>>> +int check_linux()
>>>> +{
>>>> + struct utsname tn;
>>>> + int r1, r2, r3;
>>>> +
>>>> + if (0 > uname(&tn)) {
>>>> + UNRESOLVED( errno, "uname failed" );
>>>> + }
>>>> +
>>>> + if (strcmp(tn.sysname, "Linux") != 0)
>>>> + return 0;
>>>> +
Sorry for my mistake, here should return 1.
>>>> + sscanf(tn.release, "%d.%d.%d", &r1, &r2, &r3);
>>>> + if (KERNEL_VERSION(r1, r2, r3) >= KERNEL_VERSION(2, 6, 22))
>>>> + return 1;
>>>> +
>>>> + return 0;
>>>> +}
>>>> +
>>>> /* Handler function */
>>>> void handler( int signo )
>>>> {
>>>> @@ -133,6 +155,11 @@ int main()
>>>>
>>>> struct sigaction sa;
>>>>
>>>> + if (!check_linux())
>>>> + UNTESTED( "A signal handler always interrupts sem_wait
>> "
>>>> + "at linux release, regardless of the use
>> of "
>>>> + "the sigaction SA_RESTART flag" );
>>>> +
>>>> /* Initialize output */
>>>> output_init();
>>>
>> --
>> Regards
>> Bian Naimeng
>
>
> I applied Bian's patch in my system, and build succeeded.
>
> I'm OK with the Bian's patch.
>
Thanks for confirmation.
--
Regards
Bian Naimeng
------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3.
Spend less time writing and rewriting code and more time creating great
experiences on the web. Be a part of the beta today
http://p.sf.net/sfu/msIE9-sfdev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
next prev parent reply other threads:[~2010-11-18 7:50 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-01 6:22 [LTP] [PATCH] fix "sigaction" tests Mitani
2010-11-01 7:08 ` Garrett Cooper
2010-11-01 8:00 ` Gui Jianfeng
2010-11-01 9:43 ` Garrett Cooper
2010-11-18 4:35 ` Bian Naimeng
2010-11-18 4:37 ` Garrett Cooper
2010-11-18 4:59 ` Bian Naimeng
2010-11-18 6:57 ` Mitani
2010-11-18 7:50 ` Bian Naimeng [this message]
2010-11-19 13:16 ` Cyril Hrubis
[not found] ` <4CE9CAE0.2070808@cn.fujitsu.com>
2010-11-25 18:44 ` Cyril Hrubis
[not found] ` <AANLkTim2rWksdiugWwFU_TRu44t5gqzHFwJPYLV-YdsY@mail.gmail.com>
2010-11-25 19:38 ` Cyril Hrubis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4CE4DAC7.5080608@cn.fujitsu.com \
--to=biannm@cn.fujitsu.com \
--cc=ltp-list@lists.sourceforge.net \
--cc=mitani@ryobi.co.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox