summaryrefslogtreecommitdiffstats
path: root/testsuites/psxtests/psxhdrs/sched/sched_setparam.c
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/psxtests/psxhdrs/sched/sched_setparam.c')
-rw-r--r--testsuites/psxtests/psxhdrs/sched/sched_setparam.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/testsuites/psxtests/psxhdrs/sched/sched_setparam.c b/testsuites/psxtests/psxhdrs/sched/sched_setparam.c
new file mode 100644
index 0000000000..c703369098
--- /dev/null
+++ b/testsuites/psxtests/psxhdrs/sched/sched_setparam.c
@@ -0,0 +1,49 @@
+/*
+ * This test file is used to verify that the header files associated with
+ * invoking this function are correct.
+ *
+ * COPYRIGHT (c) 1989-2009.
+ * On-Line Applications Research Corporation (OAR).
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.org/license/LICENSE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <sched.h>
+
+#ifndef _POSIX_PRIORITY_SCHEDULING
+#error "rtems is supposed to have sched_setparam"
+#endif
+
+int test( void );
+
+int test( void )
+{
+ pid_t pid;
+ struct sched_param param;
+ int result;
+
+ pid = 0;
+
+ /*
+ * really should use sched_get_priority_min() and sched_get_priority_max()
+ */
+
+ param.sched_priority = 0;
+#ifdef _POSIX_SPORADIC_SERVER
+ param.sched_ss_low_priority = 0;
+ param.sched_ss_repl_period.tv_sec = 0;
+ param.sched_ss_repl_period.tv_nsec = 0;
+ param.sched_ss_init_budget.tv_sec = 0;
+ param.sched_ss_init_budget.tv_nsec = 0;
+#endif
+
+ result = sched_setparam( pid, &param );
+
+ return result;
+}