* [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
@ 2010-01-21 0:26 Crossover Lonely
2010-01-21 0:50 ` Crossover Lonely
0 siblings, 1 reply; 7+ messages in thread
From: Crossover Lonely @ 2010-01-21 0:26 UTC (permalink / raw)
To: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 2623 bytes --]
Hi all,
When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
and thus stops immediately.
I found two ways to resolve this problem. Please refer to the following
for two kinds of patch.
Well, according to other code structures of hugeshmget0*.c, solution 1
is preferred. But for get_no_of_hugepages
will call popen(), so I think the second solution is the right one.
Will you please choose the right one to apply to
ltp-intermediate-20100119 package?
Looking forward to your confirmation!
Thanks and Best Regards,
shenghui
Solution 1===============================================================
diff -Nur
ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
---
ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 07:51:55.926035076 +0800
+++
ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 08:14:05.470032624 +0800
@@ -78,14 +78,14 @@
tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
}
- setup(); /* global setup */
-
/* The following loop checks looping state if -i option given */
if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
sufficient availability of Hugepages on the system");
else
- huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
hugepages_size() * 1024) / 2 ;
-
+ huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
hugepages_size() * 1024) / 2 ;
+
+ setup(); /* global setup */
+
for (lc = 0; TEST_LOOPING(lc); lc++) {
/* reset Tst_count in case we are looping */
Tst_count = 0;
Solution
2=========================================================================================
diff -Nur
ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
---
ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 07:51:55.926035076 +0800
+++
ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 08:16:46.122032889 +0800
@@ -160,7 +160,7 @@
setup(void)
{
/* capture signals */
- tst_sig(NOFORK, DEF_HANDLER, cleanup);
+ tst_sig(FORK, DEF_HANDLER, cleanup);
/* Pause if that option was specified */
TEST_PAUSE;
[-- Attachment #1.2: Type: text/html, Size: 2861 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 0:26 [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c Crossover Lonely
@ 2010-01-21 0:50 ` Crossover Lonely
2010-01-21 1:30 ` liubo
0 siblings, 1 reply; 7+ messages in thread
From: Crossover Lonely @ 2010-01-21 0:50 UTC (permalink / raw)
To: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 4141 bytes --]
For your convenience, I just made to patches against the signle file, not
the whole directory.
solution 1=======================
--- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
+++ hugeshmget01_2.c 2010-01-21 08:43:11.790533086 +0800
@@ -78,14 +78,14 @@
tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
}
- setup(); /* global setup */
-
/* The following loop checks looping state if -i option given */
if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
sufficient availability of Hugepages on the system");
else
huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
hugepages_size() * 1024) / 2 ;
+ setup(); /* global setup */
+
for (lc = 0; TEST_LOOPING(lc); lc++) {
/* reset Tst_count in case we are looping */
Tst_count = 0;
solution 2==============================
--- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
+++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
@@ -160,7 +160,7 @@
setup(void)
{
/* capture signals */
- tst_sig(NOFORK, DEF_HANDLER, cleanup);
+ tst_sig(FORK, DEF_HANDLER, cleanup);
/* Pause if that option was specified */
TEST_PAUSE;
2010/1/21 Crossover Lonely <crosslonelyover@gmail.com>
> Hi all,
>
> When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
> and thus stops immediately.
> I found two ways to resolve this problem. Please refer to the
> following for two kinds of patch.
> Well, according to other code structures of hugeshmget0*.c, solution 1
> is preferred. But for get_no_of_hugepages
> will call popen(), so I think the second solution is the right one.
> Will you please choose the right one to apply to
> ltp-intermediate-20100119 package?
> Looking forward to your confirmation!
>
> Thanks and Best Regards,
> shenghui
>
> Solution 1===============================================================
>
> diff -Nur
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ---
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 07:51:55.926035076 +0800
> +++
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 08:14:05.470032624 +0800
> @@ -78,14 +78,14 @@
> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
> }
>
> - setup(); /* global setup */
> -
> /* The following loop checks looping state if -i option given */
> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
> sufficient availability of Hugepages on the system");
> else
> - huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
> -
> + huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
> +
> + setup(); /* global setup */
> +
> for (lc = 0; TEST_LOOPING(lc); lc++) {
> /* reset Tst_count in case we are looping */
> Tst_count = 0;
>
>
> Solution
> 2=========================================================================================
> diff -Nur
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ---
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 07:51:55.926035076 +0800
> +++
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 08:16:46.122032889 +0800
> @@ -160,7 +160,7 @@
> setup(void)
> {
> /* capture signals */
> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
> + tst_sig(FORK, DEF_HANDLER, cleanup);
>
> /* Pause if that option was specified */
> TEST_PAUSE;
>
[-- Attachment #1.2: Type: text/html, Size: 4698 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 0:50 ` Crossover Lonely
@ 2010-01-21 1:30 ` liubo
2010-01-21 2:14 ` Crossover Lonely
0 siblings, 1 reply; 7+ messages in thread
From: liubo @ 2010-01-21 1:30 UTC (permalink / raw)
To: Crossover Lonely; +Cc: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 5267 bytes --]
Hi,
In my box, I can add -c Xnumber to avoid the unexpect signal,
for example, ./hugeshmget -c 10. Maybe you can try this as well.
Thanks,
Liu Bo
On 01/21/2010 08:50 AM, Crossover Lonely wrote:
> For your convenience, I just made to patches against the signle file, not
> the whole directory.
>
> solution 1=======================
> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
> +++ hugeshmget01_2.c 2010-01-21 08:43:11.790533086 +0800
> @@ -78,14 +78,14 @@
> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
> }
>
> - setup(); /* global setup */
> -
> /* The following loop checks looping state if -i option given */
> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
> sufficient availability of Hugepages on the system");
> else
> huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
>
> + setup(); /* global setup */
> +
> for (lc = 0; TEST_LOOPING(lc); lc++) {
> /* reset Tst_count in case we are looping */
> Tst_count = 0;
>
>
> solution 2==============================
> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
> +++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
> @@ -160,7 +160,7 @@
> setup(void)
> {
> /* capture signals */
> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
> + tst_sig(FORK, DEF_HANDLER, cleanup);
>
> /* Pause if that option was specified */
> TEST_PAUSE;
>
>
> 2010/1/21 Crossover Lonely <crosslonelyover@gmail.com>
>
>
>> Hi all,
>>
>> When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
>> and thus stops immediately.
>> I found two ways to resolve this problem. Please refer to the
>> following for two kinds of patch.
>> Well, according to other code structures of hugeshmget0*.c, solution 1
>> is preferred. But for get_no_of_hugepages
>> will call popen(), so I think the second solution is the right one.
>> Will you please choose the right one to apply to
>> ltp-intermediate-20100119 package?
>> Looking forward to your confirmation!
>>
>> Thanks and Best Regards,
>> shenghui
>>
>> Solution 1===============================================================
>>
>> diff -Nur
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ---
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 07:51:55.926035076 +0800
>> +++
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 08:14:05.470032624 +0800
>> @@ -78,14 +78,14 @@
>> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
>> }
>>
>> - setup(); /* global setup */
>> -
>> /* The following loop checks looping state if -i option given */
>> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
>> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
>> sufficient availability of Hugepages on the system");
>> else
>> - huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>> -
>> + huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>> +
>> + setup(); /* global setup */
>> +
>> for (lc = 0; TEST_LOOPING(lc); lc++) {
>> /* reset Tst_count in case we are looping */
>> Tst_count = 0;
>>
>>
>> Solution
>> 2=========================================================================================
>> diff -Nur
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ---
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 07:51:55.926035076 +0800
>> +++
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 08:16:46.122032889 +0800
>> @@ -160,7 +160,7 @@
>> setup(void)
>> {
>> /* capture signals */
>> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
>> + tst_sig(FORK, DEF_HANDLER, cleanup);
>>
>> /* Pause if that option was specified */
>> TEST_PAUSE;
>>
>>
>
>
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------------
> Throughout its 18-year history, RSA Conference consistently attracts the
> world's best and brightest in the field, creating opportunities for Conference
> attendees to learn about information security's most important issues through
> interactions with peers, luminaries and emerging and established companies.
> http://p.sf.net/sfu/rsaconf-dev2dev
> ------------------------------------------------------------------------
>
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
>
[-- Attachment #1.2: Type: text/html, Size: 5769 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 1:30 ` liubo
@ 2010-01-21 2:14 ` Crossover Lonely
2010-01-21 3:58 ` liubo
0 siblings, 1 reply; 7+ messages in thread
From: Crossover Lonely @ 2010-01-21 2:14 UTC (permalink / raw)
To: liubo; +Cc: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 6200 bytes --]
It works!
But isn't weird? Why just use ./hugeshmget won't work?
I traced it, and found it calls tsg_sig() in setup():
tst_sig(NOFORK, DEF_HANDLER, cleanup);
and in tsg_sig():
...
case SIGCLD:
if (fork_flag == FORK || STD_COPIES > 1)
continue;
default:
if (tst_setup_signal(sig, handler) == SIG_ERR)
tst_resm(TWARN | TERRNO,
"signal() failed for signal %d", sig);
break;
...
so here hugeshmget set its action to SIGCLD to handler - here is
def_handler(), which can
rise "Unexpected signal %d received." message when recived SIGCLD.
static void def_handler(int sig)
{
/*
* Break remaining test cases, do any cleanup, then exit
*/
tst_brkm(TBROK, 0, "Unexpected signal %d received.", sig);
/* now cleanup and exit */
if (T_cleanup)
(*T_cleanup) ();
tst_exit();
}
So I think it's better to correct it!
Thanks and Best Regards,
shenghui
2010/1/21 liubo <liubo2009@cn.fujitsu.com>
> Hi,
>
> In my box, I can add -c Xnumber to avoid the unexpect signal,
> for example, ./hugeshmget -c 10. Maybe you can try this as well.
>
> Thanks,
> Liu Bo
>
>
> On 01/21/2010 08:50 AM, Crossover Lonely wrote:
>
> For your convenience, I just made to patches against the signle file, not
> the whole directory.
>
> solution 1=======================
> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
> +++ hugeshmget01_2.c 2010-01-21 08:43:11.790533086 +0800
> @@ -78,14 +78,14 @@
> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
> }
>
> - setup(); /* global setup */
> -
> /* The following loop checks looping state if -i option given */
> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
> sufficient availability of Hugepages on the system");
> else
> huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
>
> + setup(); /* global setup */
> +
> for (lc = 0; TEST_LOOPING(lc); lc++) {
> /* reset Tst_count in case we are looping */
> Tst_count = 0;
>
>
> solution 2==============================
> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
> +++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
> @@ -160,7 +160,7 @@
> setup(void)
> {
> /* capture signals */
> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
> + tst_sig(FORK, DEF_HANDLER, cleanup);
>
> /* Pause if that option was specified */
> TEST_PAUSE;
>
>
> 2010/1/21 Crossover Lonely <crosslonelyover@gmail.com> <crosslonelyover@gmail.com>
>
> Hi all,
>
> When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
> and thus stops immediately.
> I found two ways to resolve this problem. Please refer to the
> following for two kinds of patch.
> Well, according to other code structures of hugeshmget0*.c, solution 1
> is preferred. But for get_no_of_hugepages
> will call popen(), so I think the second solution is the right one.
> Will you please choose the right one to apply to
> ltp-intermediate-20100119 package?
> Looking forward to your confirmation!
>
> Thanks and Best Regards,
> shenghui
>
> Solution 1===============================================================
>
> diff -Nur
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ---
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 07:51:55.926035076 +0800
> +++
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 08:14:05.470032624 +0800
> @@ -78,14 +78,14 @@
> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
> }
>
> - setup(); /* global setup */
> -
> /* The following loop checks looping state if -i option given */
> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
> sufficient availability of Hugepages on the system");
> else
> - huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
> -
> + huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
> +
> + setup(); /* global setup */
> +
> for (lc = 0; TEST_LOOPING(lc); lc++) {
> /* reset Tst_count in case we are looping */
> Tst_count = 0;
>
>
> Solution
> 2=========================================================================================
> diff -Nur
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ---
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 07:51:55.926035076 +0800
> +++
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 08:16:46.122032889 +0800
> @@ -160,7 +160,7 @@
> setup(void)
> {
> /* capture signals */
> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
> + tst_sig(FORK, DEF_HANDLER, cleanup);
>
> /* Pause if that option was specified */
> TEST_PAUSE;
>
>
>
> ------------------------------
>
> ------------------------------------------------------------------------------
> Throughout its 18-year history, RSA Conference consistently attracts the
> world's best and brightest in the field, creating opportunities for Conference
> attendees to learn about information security's most important issues through
> interactions with peers, luminaries and emerging and established companies.http://p.sf.net/sfu/rsaconf-dev2dev
>
> ------------------------------
>
> _______________________________________________
> Ltp-list mailing listLtp-list@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/ltp-list
>
>
>
[-- Attachment #1.2: Type: text/html, Size: 7168 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 2:14 ` Crossover Lonely
@ 2010-01-21 3:58 ` liubo
2010-01-21 6:13 ` Crossover Lonely
0 siblings, 1 reply; 7+ messages in thread
From: liubo @ 2010-01-21 3:58 UTC (permalink / raw)
To: Crossover Lonely; +Cc: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 6754 bytes --]
Hi,
The hugeshmget01 case is designed for testing standard SYSV shared
memory system calls "shmget", and it do need a few concurrent copies
in order to fulfill a multi-process memory-allocated environment.
IMO, "-c Xnumber" is needed.
Thanks,
Liu Bo
On 01/21/2010 10:14 AM, Crossover Lonely wrote:
> It works!
> But isn't weird? Why just use ./hugeshmget won't work?
> I traced it, and found it calls tsg_sig() in setup():
> tst_sig(NOFORK, DEF_HANDLER, cleanup);
> and in tsg_sig():
> ...
> case SIGCLD:
> if (fork_flag == FORK || STD_COPIES > 1)
> continue;
>
> default:
> if (tst_setup_signal(sig, handler) == SIG_ERR)
> tst_resm(TWARN | TERRNO,
> "signal() failed for signal %d", sig);
> break;
> ...
>
> so here hugeshmget set its action to SIGCLD to handler - here is
> def_handler(), which can
> rise "Unexpected signal %d received." message when recived SIGCLD.
> static void def_handler(int sig)
> {
> /*
> * Break remaining test cases, do any cleanup, then exit
> */
> tst_brkm(TBROK, 0, "Unexpected signal %d received.", sig);
>
> /* now cleanup and exit */
> if (T_cleanup)
> (*T_cleanup) ();
>
> tst_exit();
> }
>
> So I think it's better to correct it!
>
> Thanks and Best Regards,
> shenghui
>
> 2010/1/21 liubo <liubo2009@cn.fujitsu.com>
>
>
>> Hi,
>>
>> In my box, I can add -c Xnumber to avoid the unexpect signal,
>> for example, ./hugeshmget -c 10. Maybe you can try this as well.
>>
>> Thanks,
>> Liu Bo
>>
>>
>> On 01/21/2010 08:50 AM, Crossover Lonely wrote:
>>
>> For your convenience, I just made to patches against the signle file, not
>> the whole directory.
>>
>> solution 1=======================
>> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
>> +++ hugeshmget01_2.c 2010-01-21 08:43:11.790533086 +0800
>> @@ -78,14 +78,14 @@
>> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
>> }
>>
>> - setup(); /* global setup */
>> -
>> /* The following loop checks looping state if -i option given */
>> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
>> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
>> sufficient availability of Hugepages on the system");
>> else
>> huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>>
>> + setup(); /* global setup */
>> +
>> for (lc = 0; TEST_LOOPING(lc); lc++) {
>> /* reset Tst_count in case we are looping */
>> Tst_count = 0;
>>
>>
>> solution 2==============================
>> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
>> +++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
>> @@ -160,7 +160,7 @@
>> setup(void)
>> {
>> /* capture signals */
>> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
>> + tst_sig(FORK, DEF_HANDLER, cleanup);
>>
>> /* Pause if that option was specified */
>> TEST_PAUSE;
>>
>>
>> 2010/1/21 Crossover Lonely <crosslonelyover@gmail.com> <crosslonelyover@gmail.com>
>>
>> Hi all,
>>
>> When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
>> and thus stops immediately.
>> I found two ways to resolve this problem. Please refer to the
>> following for two kinds of patch.
>> Well, according to other code structures of hugeshmget0*.c, solution 1
>> is preferred. But for get_no_of_hugepages
>> will call popen(), so I think the second solution is the right one.
>> Will you please choose the right one to apply to
>> ltp-intermediate-20100119 package?
>> Looking forward to your confirmation!
>>
>> Thanks and Best Regards,
>> shenghui
>>
>> Solution 1===============================================================
>>
>> diff -Nur
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ---
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 07:51:55.926035076 +0800
>> +++
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 08:14:05.470032624 +0800
>> @@ -78,14 +78,14 @@
>> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
>> }
>>
>> - setup(); /* global setup */
>> -
>> /* The following loop checks looping state if -i option given */
>> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
>> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
>> sufficient availability of Hugepages on the system");
>> else
>> - huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>> -
>> + huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>> +
>> + setup(); /* global setup */
>> +
>> for (lc = 0; TEST_LOOPING(lc); lc++) {
>> /* reset Tst_count in case we are looping */
>> Tst_count = 0;
>>
>>
>> Solution
>> 2=========================================================================================
>> diff -Nur
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ---
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 07:51:55.926035076 +0800
>> +++
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 08:16:46.122032889 +0800
>> @@ -160,7 +160,7 @@
>> setup(void)
>> {
>> /* capture signals */
>> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
>> + tst_sig(FORK, DEF_HANDLER, cleanup);
>>
>> /* Pause if that option was specified */
>> TEST_PAUSE;
>>
>>
>>
>> ------------------------------
>>
>> ------------------------------------------------------------------------------
>> Throughout its 18-year history, RSA Conference consistently attracts the
>> world's best and brightest in the field, creating opportunities for Conference
>> attendees to learn about information security's most important issues through
>> interactions with peers, luminaries and emerging and established companies.http://p.sf.net/sfu/rsaconf-dev2dev
>>
>> ------------------------------
>>
>> _______________________________________________
>> Ltp-list mailing listLtp-list@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/ltp-list
>>
>>
>>
>>
>
>
[-- Attachment #1.2: Type: text/html, Size: 7257 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 3:58 ` liubo
@ 2010-01-21 6:13 ` Crossover Lonely
2010-01-21 7:37 ` Crossover Lonely
0 siblings, 1 reply; 7+ messages in thread
From: Crossover Lonely @ 2010-01-21 6:13 UTC (permalink / raw)
To: liubo; +Cc: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 6997 bytes --]
Hi,
I have tried "gdb ./hugeshmget01 -c 2" and "set follow-fork-mode
child".
Then I traced into the child thread, and got
"hugeshmget01 1 TBROK : Unexpected signal 17 received."
2010/1/21 liubo <liubo2009@cn.fujitsu.com>
> Hi,
>
> The hugeshmget01 case is designed for testing standard SYSV shared
> memory system calls "shmget", and it do need a few concurrent copies
> in order to fulfill a multi-process memory-allocated environment.
>
> IMO, "-c Xnumber" is needed.
>
> Thanks,
> Liu Bo
>
>
>
> On 01/21/2010 10:14 AM, Crossover Lonely wrote:
>
> It works!
> But isn't weird? Why just use ./hugeshmget won't work?
> I traced it, and found it calls tsg_sig() in setup():
> tst_sig(NOFORK, DEF_HANDLER, cleanup);
> and in tsg_sig():
> ...
> case SIGCLD:
> if (fork_flag == FORK || STD_COPIES > 1)
> continue;
>
> default:
> if (tst_setup_signal(sig, handler) == SIG_ERR)
> tst_resm(TWARN | TERRNO,
> "signal() failed for signal %d", sig);
> break;
> ...
>
> so here hugeshmget set its action to SIGCLD to handler - here is
> def_handler(), which can
> rise "Unexpected signal %d received." message when recived SIGCLD.
> static void def_handler(int sig)
> {
> /*
> * Break remaining test cases, do any cleanup, then exit
> */
> tst_brkm(TBROK, 0, "Unexpected signal %d received.", sig);
>
> /* now cleanup and exit */
> if (T_cleanup)
> (*T_cleanup) ();
>
> tst_exit();
> }
>
> So I think it's better to correct it!
>
> Thanks and Best Regards,
> shenghui
>
> 2010/1/21 liubo <liubo2009@cn.fujitsu.com> <liubo2009@cn.fujitsu.com>
>
> Hi,
>
> In my box, I can add -c Xnumber to avoid the unexpect signal,
> for example, ./hugeshmget -c 10. Maybe you can try this as well.
>
> Thanks,
> Liu Bo
>
>
> On 01/21/2010 08:50 AM, Crossover Lonely wrote:
>
> For your convenience, I just made to patches against the signle file, not
> the whole directory.
>
> solution 1=======================
> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
> +++ hugeshmget01_2.c 2010-01-21 08:43:11.790533086 +0800
> @@ -78,14 +78,14 @@
> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
> }
>
> - setup(); /* global setup */
> -
> /* The following loop checks looping state if -i option given */
> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
> sufficient availability of Hugepages on the system");
> else
> huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
>
> + setup(); /* global setup */
> +
> for (lc = 0; TEST_LOOPING(lc); lc++) {
> /* reset Tst_count in case we are looping */
> Tst_count = 0;
>
>
> solution 2=============================
> =
> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
> +++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
> @@ -160,7 +160,7 @@
> setup(void)
> {
> /* capture signals */
> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
> + tst_sig(FORK, DEF_HANDLER, cleanup);
>
> /* Pause if that option was specified */
> TEST_PAUSE;
>
>
> 2010/1/21 Crossover Lonely <crosslonelyover@gmail.com> <crosslonelyover@gmail.com> <crosslonelyover@gmail.com> <crosslonelyover@gmail.com>
>
>
> Hi all,
>
> When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
> and thus stops immediately.
> I found two ways to resolve this problem. Please refer to the
> following for two kinds of patch.
> Well, according to other code structures of hugeshmget0*.c, solution 1
> is preferred. But for get_no_of_hugepages
> will call popen(), so I think the second solution is the right one.
> Will you please choose the right one to apply to
> ltp-intermediate-20100119 package?
> Looking forward to your confirmation!
>
> Thanks and Best Regards,
> shenghui
>
> Solution 1===============================================================
>
> diff -Nur
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ---
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 07:51:55.926035076 +0800
> +++
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 08:14:05.470032624 +0800
> @@ -78,14 +78,14 @@
> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
> }
>
> - setup(); /* global setup */
> -
> /* The following loop checks looping state if -i option given */
> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
> sufficient availability of Hugepages on the system");
> else
> - huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
> -
> + huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
> hugepages_size() * 1024) / 2 ;
> +
> + setup(); /* global setup */
> +
> for (lc = 0; TEST_LOOPING(lc); lc++) {
> /* reset Tst_count in case we are looping */
> Tst_count = 0;
>
>
> Solution
> 2=========================================================================================
> diff -Nur
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> ---
> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 07:51:55.926035076 +0800
> +++
> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
> 2010-01-21 08:16:46.122032889 +0800
> @@ -160,7 +160,7 @@
> setup(void)
> {
> /* capture signals */
> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
> + tst_sig(FORK, DEF_HANDLER, cleanup);
>
> /* Pause if that option was specified */
> TEST_PAUSE;
>
>
>
> ------------------------------
>
> ------------------------------------------------------------------------------
> Throughout its 18-year history, RSA Conference consistently attracts the
> world's best and brightest in the field, creating opportunities for Conference
> attendees to learn about information security's most important issues through
> interactions with peers, luminaries and emerging and established companies.http://p.sf.net/sfu/rsaconf-dev2dev
>
> ------------------------------
>
> ______________________________
> _________________
> Ltp-list mailing listLtp-list@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/ltp-list
>
>
>
>
>
--
Thanks and Best Regards,
shenghui
[-- Attachment #1.2: Type: text/html, Size: 8094 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
2010-01-21 6:13 ` Crossover Lonely
@ 2010-01-21 7:37 ` Crossover Lonely
0 siblings, 0 replies; 7+ messages in thread
From: Crossover Lonely @ 2010-01-21 7:37 UTC (permalink / raw)
To: liubo; +Cc: ltp-list
[-- Attachment #1.1: Type: text/plain, Size: 9116 bytes --]
Oh, I got it. There is some confusion.
1) In hugeshmget01.c, setup() will call
tst_sig(NOFORK, DEF_HANDLER, cleanup);
2) In include/test.h:
/* defines for unexpected signal setup routine (set_usig.c)
*/
#define FORK 1 /* SIGCLD is to be
ignored */
#define NOFORK 0 /* SIGCLD is to be caught */
so here, hugeshmget01 want to catch SIGCLD.
3) In lib/tst_gig.c:
...
case SIGCLD:
if (fork_flag == FORK || STD_COPIES > 1)
continue;
default:
if (tst_setup_signal(sig, handler) == SIG_ERR)
tst_resm(TWARN | TERRNO,
"signal() failed for signal %d",
sig);
break;
...
Here, if you donot use "-c Xnumber", the SIGCLD handler will be def_handler,
which will rise
"Unexpected signal %d received"
when received signal SIGCLD
But if you use "-c Xnumber", STD_COPIES > 1 will be true, so the handler to
SIGCLD is default, "ignore".
Confusion comes out:
1. tst_sig(NOFORK, DEF_HANDLER, cleanup); /* SIGCLD is to
be caught */
2. -c Xnumber will lead to SIGCLD ignored
Although the results are normal, but the code itself can lead to confusion.
So I suggest use the following patch:
--- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
+++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
@@ -160,7 +160,7 @@
setup(void)
{
/* capture signals */
- tst_sig(NOFORK, DEF_HANDLER, cleanup);
+ tst_sig(FORK, DEF_HANDLER, cleanup);
/* Pause if that option was specified */
TEST_PAUSE;
2010/1/21 Crossover Lonely <crosslonelyover@gmail.com>
> Hi,
> I have tried "gdb ./hugeshmget01 -c 2" and "set follow-fork-mode
> child".
> Then I traced into the child thread, and got
> "hugeshmget01 1 TBROK : Unexpected signal 17 received."
>
>
>
> 2010/1/21 liubo <liubo2009@cn.fujitsu.com>
>
>> Hi,
>>
>> The hugeshmget01 case is designed for testing standard SYSV shared
>> memory system calls "shmget", and it do need a few concurrent copies
>> in order to fulfill a multi-process memory-allocated environment.
>>
>> IMO, "-c Xnumber" is needed.
>>
>> Thanks,
>> Liu Bo
>>
>>
>>
>> On 01/21/2010 10:14 AM, Crossover Lonely wrote:
>>
>> It works!
>> But isn't weird? Why just use ./hugeshmget won't work?
>> I traced it, and found it calls tsg_sig() in setup():
>> tst_sig(NOFORK, DEF_HANDLER, cleanup);
>> and in tsg_sig():
>> ...
>> case SIGCLD:
>> if (fork_flag == FORK || STD_COPIES > 1)
>> continue;
>>
>> default:
>> if (tst_setup_signal(sig, handler) == SIG_ERR)
>> tst_resm(TWARN | TERRNO,
>> "signal() failed for signal %d", sig);
>> break;
>> ...
>>
>> so here hugeshmget set its action to SIGCLD to handler - here is
>> def_handler(), which can
>> rise "Unexpected signal %d received." message when recived SIGCLD.
>> static void def_handler(int sig)
>> {
>> /*
>> * Break remaining test cases, do any cleanup, then exit
>> */
>> tst_brkm(TBROK, 0, "Unexpected signal %d received.", sig);
>>
>> /* now cleanup and exit */
>> if (T_cleanup)
>> (*T_cleanup) ();
>>
>> tst_exit();
>> }
>>
>> So I think it's better to correct it!
>>
>> Thanks and Best Regards,
>> shenghui
>>
>> 2010/1/21 liubo <liubo2009@cn.fujitsu.com> <liubo2009@cn.fujitsu.com>
>>
>> Hi,
>>
>> In my box, I can add -c Xnumber to avoid the unexpect signal,
>> for example, ./hugeshmget -c 10. Maybe you can try this as well.
>>
>> Thanks,
>> Liu Bo
>>
>>
>> On 01/21/2010 08:50 AM, Crossover Lonely wrote:
>>
>> For your convenience, I just made to patches against the signle file, not
>> the whole directory.
>>
>> solution 1=======================
>> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
>> +++ hugeshmget01_2.c 2010-01-21 08:43:11.790533086 +0800
>> @@ -78,14 +78,14 @@
>> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
>> }
>>
>> - setup(); /* global setup */
>> -
>> /* The following loop checks looping state if -i option given */
>> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
>> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
>> sufficient availability of Hugepages on the system");
>> else
>> huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>>
>> + setup(); /* global setup */
>> +
>> for (lc = 0; TEST_LOOPING(lc); lc++) {
>> /* reset Tst_count in case we are looping */
>> Tst_count = 0;
>>
>>
>> solution 2=============================
>> =
>> --- hugeshmget01.c 2009-11-20 00:05:21.000000000 +0800
>> +++ hugeshmget01_1.c 2010-01-21 08:41:56.350057513 +0800
>> @@ -160,7 +160,7 @@
>> setup(void)
>> {
>> /* capture signals */
>> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
>> + tst_sig(FORK, DEF_HANDLER, cleanup);
>>
>> /* Pause if that option was specified */
>> TEST_PAUSE;
>>
>>
>> 2010/1/21 Crossover Lonely <crosslonelyover@gmail.com> <crosslonelyover@gmail.com> <crosslonelyover@gmail.com> <crosslonelyover@gmail.com>
>>
>>
>> Hi all,
>>
>> When the hugeshmget01 runs, it gets unexpected signal SIGCHLD/SIGCLD,
>> and thus stops immediately.
>> I found two ways to resolve this problem. Please refer to the
>> following for two kinds of patch.
>> Well, according to other code structures of hugeshmget0*.c, solution 1
>> is preferred. But for get_no_of_hugepages
>> will call popen(), so I think the second solution is the right one.
>> Will you please choose the right one to apply to
>> ltp-intermediate-20100119 package?
>> Looking forward to your confirmation!
>>
>> Thanks and Best Regards,
>> shenghui
>>
>> Solution 1===============================================================
>>
>> diff -Nur
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ---
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 07:51:55.926035076 +0800
>> +++
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 08:14:05.470032624 +0800
>> @@ -78,14 +78,14 @@
>> tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);
>> }
>>
>> - setup(); /* global setup */
>> -
>> /* The following loop checks looping state if -i option given */
>> if ( get_no_of_hugepages() <= 0 || hugepages_size() <= 0 )
>> tst_brkm(TBROK, cleanup, "Test cannot be continued owning to
>> sufficient availability of Hugepages on the system");
>> else
>> - huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>> -
>> + huge_pages_shm_to_be_allocated = ( get_no_of_hugepages() *
>> hugepages_size() * 1024) / 2 ;
>> +
>> + setup(); /* global setup */
>> +
>> for (lc = 0; TEST_LOOPING(lc); lc++) {
>> /* reset Tst_count in case we are looping */
>> Tst_count = 0;
>>
>>
>> Solution
>> 2=========================================================================================
>> diff -Nur
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> ---
>> ltp-intermediate-20100119-origin/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 07:51:55.926035076 +0800
>> +++
>> ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c
>> 2010-01-21 08:16:46.122032889 +0800
>> @@ -160,7 +160,7 @@
>> setup(void)
>> {
>> /* capture signals */
>> - tst_sig(NOFORK, DEF_HANDLER, cleanup);
>> + tst_sig(FORK, DEF_HANDLER, cleanup);
>>
>> /* Pause if that option was specified */
>> TEST_PAUSE;
>>
>>
>>
>> ------------------------------
>>
>> ------------------------------------------------------------------------------
>> Throughout its 18-year history, RSA Conference consistently attracts the
>> world's best and brightest in the field, creating opportunities for Conference
>> attendees to learn about information security's most important issues through
>> interactions with peers, luminaries and emerging and established companies.http://p.sf.net/sfu/rsaconf-dev2dev
>>
>> ------------------------------
>>
>> ______________________________
>> _________________
>> Ltp-list mailing listLtp-list@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/ltp-list
>>
>>
>>
>>
>>
>
>
> --
>
>
> Thanks and Best Regards,
> shenghui
>
--
Thanks and Best Regards,
shenghui
[-- Attachment #1.2: Type: text/html, Size: 10580 bytes --]
[-- Attachment #2: Type: text/plain, Size: 420 bytes --]
------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2010-01-21 7:37 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-21 0:26 [LTP] [patch]ltp-intermediate-20100119/testcases/kernel/mem/hugetlb/hugeshmget/hugeshmget01.c Crossover Lonely
2010-01-21 0:50 ` Crossover Lonely
2010-01-21 1:30 ` liubo
2010-01-21 2:14 ` Crossover Lonely
2010-01-21 3:58 ` liubo
2010-01-21 6:13 ` Crossover Lonely
2010-01-21 7:37 ` Crossover Lonely
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox