Particularly:

   - TEST_ERRNO is only set when the syscall is executed using the
     TEST() macro. The tests gave bad error messages because of that.

   - The end of the test was dead code; moved the TPASS code to pass at
     the end of file.

   - The test assumes std. input is a pipe; reflect this in the runtest
     file

Regards
     Jiri Palecek

Signed-off-by: Jiri Palecek <[email protected]>
---
  runtest/syscalls                            |    2 +-
  testcases/kernel/syscalls/splice/splice02.c |   16 ++++++----------
  2 files changed, 7 insertions(+), 11 deletions(-)

diff --git a/runtest/syscalls b/runtest/syscalls
index 9b7b2ca..33beff0 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -1033,7 +1033,7 @@ sockioctl01 sockioctl01
   #splice test
  splice01 splice01
-splice02 echo "Test splice02()" > splice02-temp; splice02 splice02-temp
+splice02 seq 1 10000000 | splice02 splice02-temp
   tee01 tee01
  diff --git a/testcases/kernel/syscalls/splice/splice02.c 
b/testcases/kernel/syscalls/splice/splice02.c
index 321d002..16bff86 100644
--- a/testcases/kernel/syscalls/splice/splice02.c
+++ b/testcases/kernel/syscalls/splice/splice02.c
@@ -108,7 +108,6 @@ void setup() {
   int main(int ac, char **av) {
        int fd = 0;
-       int ret = 0;
        
          setup();
  @@ -118,26 +117,23 @@ int main(int ac, char **av) {
        }
        fd=open(av[1], O_WRONLY | O_CREAT | O_TRUNC, 0644);
        if(fd < 0 ) {
-           tst_resm(TFAIL, "%s failed - errno = %d : %s", TCID, TEST_ERRNO, 
strerror(TEST_ERRNO));
+               tst_resm(TFAIL, "open(%s) failed - errno = %d : %s", av[1], 
errno, 
strerror(errno));
           cleanup();
           tst_exit();
        }
                        
          do {
-           ret = splice(STDIN_FILENO, NULL, fd, NULL, SPLICE_SIZE, 0);
-           if (ret < 0) {
-               tst_resm(TFAIL, "%s failed - errno = %d : %s",TCID, TEST_ERRNO, 
strerror(TEST_ERRNO));
+                                       TEST(splice(STDIN_FILENO, NULL, fd, 
NULL, SPLICE_SIZE, 0));
+           if (TEST_RETURN < 0) {
+               tst_resm(TFAIL, "splice failed - errno = %d : %s", TEST_ERRNO, 
strerror(TEST_ERRNO));
                cleanup();
                tst_exit();
            } else
-            if (ret < SPLICE_SIZE){
+            if (TEST_RETURN == 0){
+                                                       tst_resm(TPASS, 
"splice() system call Passed");
                cleanup();
                tst_exit();
            }
        } while(1);
-
-       close(fd);
-        tst_resm(TPASS, "splice() system call Passed");
-        tst_exit();
  }
  -- 1.6.2


------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to