Hi, Subrata Modak

Subrata Modak wrote as:
> On Thu, 2009-07-09 at 15:35 +0800, Wang Yong wrote: 
>   
>> Whenever system called utimes, the error message returned was EINVAL,
>> because the member variable of struct timeval was not initialized,
>> so initialize it.
>>
>> Signed-off-by: WangYong <[email protected]>
>>
>> diff -Nurp ltp-full-20090630/testcases/kernel/syscalls/utimes/utimes01.c
>> ltp-full-20090630.new/testcases/kernel/syscalls/utimes/utimes01.c
>> --- ltp.orig/testcases/kernel/syscalls/utimes/utimes01.c 2009-07-01
>> 17:20:12.000000000 +0800
>> +++ ltp/testcases/kernel/syscalls/utimes/utimes01.c  2009-07-08
>> 17:20:38.000000000 +0800
>> @@ -248,6 +248,7 @@ static int do_test(struct test_case *tc)
>>           /*
>>            * Execute system call
>>            */
>> +        memset(tv, 0, 2 * sizeof(struct timeval));
>>     
>
> Initializing this is good. But i do not find any visible difference in
> running this test pre and post patching either on 2.6.29 or 2.6.18
> kernels. The following output is generated each time:
>
> # ./testcases/bin/utimes01 
> utimes01    0  INFO  :  (case00) START
> open failed.
> utimes01    0  INFO  :  (case00) END => NG
> utimes01    0  INFO  :  (case01) START
> open failed.
> utimes01    0  INFO  :  (case01) END => NG
> utimes01    0  INFO  :  (case02) START
> open failed.
> utimes01    0  INFO  :  (case02) END => NG
> utimes01    0  INFO  :  (case03) START
> open failed.
> utimes01    0  INFO  :  (case03) END => NG
> utimes01    0  INFO  :  (case04) START
> open failed.
> utimes01    0  INFO  :  (case04) END => NG
> utimes01    1  FAIL  :  utimes01 failed - errno = 2 : No such file or
> directory
> utimes01    0  INFO  :  NG
>
> # echo $?
> 1
>   
I have fixed this problem. 


[PATCH] Fix failure of the utimes01 test

Whenever system called utimes, the error message returned was EINVAL,
because the member variable of struct timeval was not initialized,
so initialize it.
This patch also fixed the path which we pass to setup_file(). If
progdir is not a absolute pathname of the working directory, the file
open will fail.
 
Signed-off-by: WangYong <[email protected]>

--- a/testcases/kernel/syscalls/utimes/utimes01.c       2009-07-15 
10:22:41.000000000 +0800
+++ b/testcases/kernel/syscalls/utimes/utimes01.c       2009-07-16 
08:55:13.000000000 +0800
@@ -138,7 +138,6 @@ void setup() {
  */
 static int opt_debug;
 static char *progname;
-static char *progdir;
 
 enum test_type {
                NORMAL,
@@ -232,7 +231,7 @@ static int do_test(struct test_case *tc)
         struct stat st;
         uid_t old_uid;
 
-        TEST(rc = setup_file(progdir, "test.file", fpath));
+        TEST(rc = setup_file(TESTDIR, "test.file", fpath));
         if (rc < 0)
                 return 1;
 
@@ -248,6 +247,7 @@ static int do_test(struct test_case *tc)
         /*
          * Execute system call
          */
+        memset(tv, 0, sizeof(tv));
         tv[0].tv_sec = tc->a_sec;
         tv[1].tv_sec = tc->m_sec;
         TEST(len = strlen(fpath));
@@ -338,9 +338,6 @@ int main(int ac, char **av) {
        progname = strchr(av[0], '/');
         progname = progname ? progname + 1 : av[0];    
        
-       progdir = strdup(av[0]);
-        progdir = dirname(progdir);
-       
         /* parse standard options */
         if ((msg = parse_opts(ac, av, (option_t *)NULL, NULL)) != (char 
*)NULL){
              tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg);






------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to