The code of fcntl15 is not completely ported to uClinux.
So it will fail on uclinux platform.

Bellow is the patch:
--
Index: testcases/kernel/syscalls/fcntl/fcntl15.c
===================================================================
--- testcases/kernel/syscalls/fcntl/fcntl15.c
+++ testcases/kernel/syscalls/fcntl/fcntl15.c
@@ -185,12 +185,17 @@
 }

 #ifdef UCLINUX
-int uc_file_flag, uc_file_mode;
+int uc_file_flag, uc_file_mode, uc_dup_flag;

 void dochild1_uc()
 {
        dochild1(uc_file_flag, uc_file_mode);
 }
+
+void dochild2_uc()
+{
+       dochild2(uc_file_flag, uc_file_mode, uc_dup_flag);
+}
 #endif

 int dofork(int file_flag, int file_mode)
@@ -462,7 +467,15 @@
                tst_rmdir();
                return 1;
        } else if (child2 == 0) {       /* child */
+#ifdef UCLINUX
+               if (self_exec(argv0, "ndddds", 2, file_flag, file_mode,
dup_flag,
+                             parent, tmpname) < 0) {
+                       perror("self_exec failure");
+                       return(1);
+               }
+#else
                dochild2(file_flag, file_mode, dup_flag);
+#endif
        }

        /* parent */
@@ -546,6 +559,10 @@
 #ifdef UCLINUX
        maybe_run_child(&dochild1_uc, "nddds", 1, &uc_file_flag,
                        &uc_file_mode, &parent, tmpname);
+
+       maybe_run_child(&dochild2_uc, "ndddds", 2, &uc_file_flag,
+                       &uc_file_mode, &uc_dup_flag, &parent, tmpname);
+
        argv0 = av[0];
 #endif

--



Best regards,
Vivi Li
------------------------------------------------------------------------------
Learn how Oracle Real Application Clusters (RAC) One Node allows customers
to consolidate database storage, standardize their database environment, and, 
should the need arise, upgrade to a full multi-node Oracle RAC database 
without downtime or disruption
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to