Index: testsuites/psxtests/ChangeLog
===================================================================
--- testsuites/psxtests/ChangeLog	(revision e1ffb64f58b5e482cb461c8d95e18047050a8c53)
+++ testsuites/psxtests/ChangeLog	(revision 381a53a801a7c0ab51b363eae52275fd82c2b7d5)
@@ -1,2 +1,6 @@
+2009-07-22	Joel Sherrill <joel.sherrill@oarcorp.com>
+
+	* psxcancel/init.c: Clean up.
+
 2009-07-21	Joel Sherrill <joel.sherrill@oarcorp.com>
 
Index: testsuites/psxtests/psxcancel/init.c
===================================================================
--- testsuites/psxtests/psxcancel/init.c	(revision e1ffb64f58b5e482cb461c8d95e18047050a8c53)
+++ testsuites/psxtests/psxcancel/init.c	(revision 381a53a801a7c0ab51b363eae52275fd82c2b7d5)
@@ -1,9 +1,3 @@
 /*
- * Thread Test Program
- *
- *  - test of POSIX's pthread_init() function from rtemstask Init()
- *
- *     ott@linux.thai.net
- *
  *  The license and distribution terms for this file may be
  *  found in the file LICENSE in this distribution or at
@@ -18,42 +12,16 @@
 #include <pthread.h>
 #include <sys/time.h>
-
-#ifdef __rtems__
-#include <rtems.h>
-/* configuration information */
-
-#define CONFIGURE_INIT
-
 #include <unistd.h>
 #include <errno.h>
 #include <sched.h>
 
-#include <bsp.h> /* for device driver prototypes */
+
+#if defined(__rtems__)
+#include <rtems.h>
+#include <bsp.h>
 #include <pmacros.h>
+#endif
 
-rtems_task Init( rtems_task_argument argument);
-
-/* configuration information */
-
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS             3
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-#define CONFIGURE_EXTRA_TASK_STACKS         (3 * RTEMS_MINIMUM_STACK_SIZE)
-
-#define CONFIGURE_MAXIMUM_POSIX_THREADS 5
-#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 5
-#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 5
-
-#include <rtems/console.h>
-#include <rtems/confdefs.h>
-
-#endif /* __rtems__ */
-
-void countTaskAsync(void);
-void countTaskDeferred(void);
-
-void countTaskDeferred(void)
+void *countTaskDeferred(void *ignored)
 {
   int i=0;
@@ -66,8 +34,8 @@
     sleep(1);
     pthread_testcancel();
-    }
+  }
 }
 
-void countTaskAsync(void)
+void *countTaskAsync(void *ignored)
 {
   int i=0;
@@ -79,14 +47,14 @@
     printf("countTaskAsync: elapsed time (second): %2d\n", i++ );
     sleep(1);
-    }
+  }
 }
 
-#ifdef __linux__
-int main(){
+#if defined(__rtems__)
+  void *POSIX_Init(void *ignored)
 #else
-  rtems_task Init( rtems_task_argument ignored ) {
+  int main(int argc, char **argv)
 #endif
-
-  pthread_t count;
+{
+  pthread_t task;
   int taskparameter = 0;
 
@@ -96,5 +64,5 @@
   {
     int task_ret;
-    task_ret = pthread_create(&count, NULL, (void *) countTaskDeferred, (void *) &taskparameter);
+    task_ret = pthread_create(&task, NULL, countTaskDeferred, &taskparameter);
     if (task_ret) {
       perror("pthread_create: countTask");
@@ -103,6 +71,6 @@
     /* sleep for 5 seconds, then cancel it */
     sleep(5);
-    pthread_cancel(count);
-    pthread_join(count,NULL);
+    pthread_cancel(task);
+    pthread_join(task, NULL);
   }
 
@@ -110,5 +78,5 @@
   {
     int task_ret;
-    task_ret = pthread_create(&count, NULL, (void *) countTaskAsync, (void *) &taskparameter);
+    task_ret = pthread_create(&task, NULL, countTaskAsync, &taskparameter);
     if (task_ret) {
       perror("pthread_create: countTask");
@@ -117,6 +85,6 @@
     /* sleep for 5 seconds, then cancel it */
     sleep(5);
-    pthread_cancel(count);
-    pthread_join(count,NULL);
+    pthread_cancel(task);
+    pthread_join(task, NULL);
   }
 
@@ -124,8 +92,24 @@
   puts( "*** END OF POSIX CANCEL TEST ***" );
 
-#ifdef __linux__
-  return 0;
-#else
-  rtems_test_exit(EXIT_SUCCESS);
-#endif
+  #if defined(__rtems__)
+    rtems_test_exit(EXIT_SUCCESS);
+    return NULL;
+  #else
+    return 0;
+  #endif
 }
+
+/* configuration information */
+#if defined(__rtems__)
+
+#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+
+#define CONFIGURE_MAXIMUM_POSIX_THREADS 2
+#define CONFIGURE_POSIX_INIT_THREAD_TABLE
+
+#define CONFIGURE_INIT
+#include <rtems/confdefs.h>
+
+#endif /* __rtems__ */
+
