summaryrefslogtreecommitdiff
path: root/sys/compat/linux/linux_sched.h
diff options
context:
space:
mode:
authorNiklas Hallqvist <niklas@cvs.openbsd.org>2001-04-02 21:43:13 +0000
committerNiklas Hallqvist <niklas@cvs.openbsd.org>2001-04-02 21:43:13 +0000
commitaf30415b0b2928465e43e6cf1262e7275d8dd1c5 (patch)
treec0943d31f2c4f5f6770363b2596da79e506bfc31 /sys/compat/linux/linux_sched.h
parent92d3551f6f3379d9e9e7a6e3652ca50686373a1d (diff)
On popular demand, the Linux-compatibility clone(2) implementation based
on NetBSD's code, as well as some faked Posix RT extensions by me. This makes at least simple linuxthreads tests work.
Diffstat (limited to 'sys/compat/linux/linux_sched.h')
-rw-r--r--sys/compat/linux/linux_sched.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/sys/compat/linux/linux_sched.h b/sys/compat/linux/linux_sched.h
new file mode 100644
index 00000000000..64007452a8d
--- /dev/null
+++ b/sys/compat/linux/linux_sched.h
@@ -0,0 +1,66 @@
+/* $OpenBSD: linux_sched.h,v 1.1 2001/04/02 21:43:11 niklas Exp $ */
+/* $NetBSD: linux_sched.h,v 1.1 1999/05/12 19:49:09 thorpej Exp $ */
+
+/*-
+ * Copyright (c) 1999 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
+ * NASA Ames Research Center.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _LINUX_SCHED_H
+#define _LINUX_SCHED_H
+
+/*
+ * Flags passed to the Linux __clone(2) system call.
+ */
+#define LINUX_CLONE_CSIGNAL 0x000000ff /* signal to be sent at exit */
+#define LINUX_CLONE_VM 0x00000100 /* share address space */
+#define LINUX_CLONE_FS 0x00000200 /* share "file system" info */
+#define LINUX_CLONE_FILES 0x00000400 /* share file descriptors */
+#define LINUX_CLONE_SIGHAND 0x00000800 /* share signal actions */
+#define LINUX_CLONE_PID 0x00001000 /* share process ID */
+#define LINUX_CLONE_PTRACE 0x00002000 /* ptrace(2) continues on
+ child */
+#define LINUX_CLONE_VFORK 0x00004000 /* parent blocks until child
+ exits */
+
+struct linux_sched_param {
+ int sched_priority;
+};
+
+#define LINUX_SCHED_OTHER 0
+#define LINUX_SCHED_FIFO 1
+#define LINUX_SCHED_RR 2
+
+#endif /* _LINUX_SCHED_H */