From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
To: xen-devel <xen-devel@lists.xensource.com>
Subject: [PATCH] mini-os: adding some missing posix function declarations
Date: Tue, 16 Sep 2008 16:50:31 +0100 [thread overview]
Message-ID: <48CFD5C7.8000908@eu.citrix.com> (raw)
Adding some missing posix function declarations, to get rid of some
qemu-remote compile time warnings.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
diff -r 12f3edfab6ef extras/mini-os/include/posix/time.h
--- a/extras/mini-os/include/posix/time.h Fri Sep 12 16:45:37 2008 +0100
+++ b/extras/mini-os/include/posix/time.h Mon Sep 15 16:36:09 2008 +0100
@@ -6,5 +6,6 @@
#include_next <time.h>
int nanosleep(const struct timespec *req, struct timespec *rem);
+int clock_gettime(clockid_t clock_id, struct timespec *tp);
#endif /* _POSIX_TIME_H */
diff -r 12f3edfab6ef extras/mini-os/include/posix/unistd.h
--- a/extras/mini-os/include/posix/unistd.h Fri Sep 12 16:45:37 2008 +0100
+++ b/extras/mini-os/include/posix/unistd.h Mon Sep 15 15:46:54 2008 +0100
@@ -5,5 +5,6 @@
size_t getpagesize(void);
int ftruncate(int fd, off_t length);
+int lockf(int fd, int cmd, off_t len);
#endif /* _POSIX_UNISTD_H */
diff -r 12f3edfab6ef extras/mini-os/include/x86/os.h
--- a/extras/mini-os/include/x86/os.h Fri Sep 12 16:45:37 2008 +0100
+++ b/extras/mini-os/include/x86/os.h Tue Sep 16 14:08:22 2008 +0100
@@ -11,6 +11,7 @@
#define __builtin_expect(x, expected_value) (x)
#endif
#define unlikely(x) __builtin_expect((x),0)
+#define likely(x) __builtin_expect((x),1)
#define smp_processor_id() 0
diff -r 12f3edfab6ef extras/mini-os/lib/sys.c
--- a/extras/mini-os/lib/sys.c Fri Sep 12 16:45:37 2008 +0100
+++ b/extras/mini-os/lib/sys.c Mon Sep 15 15:45:17 2008 +0100
@@ -1322,6 +1322,7 @@ unsupported_function_crash(sysconf);
unsupported_function_crash(sysconf);
unsupported_function(int, tcsetattr, -1);
unsupported_function(int, tcgetattr, 0);
+unsupported_function(int, poll, -1);
/* Linuxish abi for the Caml runtime, don't support */
unsupported_function_log(struct dirent *, readdir64, NULL);
diff -r 12f3edfab6ef extras/mini-os/include/posix/arpa/inet.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/extras/mini-os/include/posix/arpa/inet.h Mon Sep 15 12:06:23 2008 +0100
@@ -0,0 +1,7 @@
+#ifndef _POSIX_ARPA_INET_H_
+#define _POSIX_ARPA_INET_H_
+
+#include <lwip/inet.h>
+
+#endif /* _POSIX_ARPA_INET_H_ */
+
diff -r 12f3edfab6ef extras/mini-os/include/posix/signal.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/extras/mini-os/include/posix/signal.h Tue Sep 16 16:11:34 2008 +0100
@@ -0,0 +1,10 @@
+#ifndef _POSIX_SIGNAL_H
+#define _POSIX_SIGNAL_H
+
+#include_next <signal.h>
+
+int sigaction(int signum, const struct sigaction * __restrict,
+ struct sigaction * __restrict);
+
+#endif
+
diff -r 12f3edfab6ef extras/mini-os/include/posix/sys/poll.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/extras/mini-os/include/posix/sys/poll.h Mon Sep 15 15:47:39 2008 +0100
@@ -0,0 +1,79 @@
+/*
+ * This code is mostly taken from FreeBSD sys/sys/poll.h
+ * Changes: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
+ *
+ ****************************************************************************
+ * Copyright (c) 1997 Peter Wemm <peter@freebsd.org>
+ * All rights reserved.
+ *
+ * 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. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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 _POSIX_SYS_POLL_H_
+#define _POSIX_SYS_POLL_H_
+
+/*
+ * This file is intended to be compatible with the traditional poll.h.
+ */
+
+typedef unsigned int nfds_t;
+
+/*
+ * This structure is passed as an array to poll(2).
+ */
+struct pollfd {
+ int fd; /* which file descriptor to poll */
+ short events; /* events we are interested in */
+ short revents; /* events found on return */
+};
+
+/*
+ * Requestable events. If poll(2) finds any of these set, they are
+ * copied to revents on return.
+ * XXX Note that FreeBSD doesn't make much distinction between POLLPRI
+ * and POLLRDBAND since none of the file types have distinct priority
+ * bands - and only some have an urgent "mode".
+ * XXX Note POLLIN isn't really supported in true SVSV terms. Under SYSV
+ * POLLIN includes all of normal, band and urgent data. Most poll handlers
+ * on FreeBSD only treat it as "normal" data.
+ */
+#define POLLIN 0x0001 /* any readable data available */
+#define POLLPRI 0x0002 /* OOB/Urgent readable data */
+#define POLLOUT 0x0004 /* file descriptor is writeable */
+#define POLLRDNORM 0x0040 /* non-OOB/URG data available */
+#define POLLWRNORM POLLOUT /* no write type differentiation */
+#define POLLRDBAND 0x0080 /* OOB/Urgent readable data */
+#define POLLWRBAND 0x0100 /* OOB/Urgent data can be written */
+
+/*
+ * These events are set if they occur regardless of whether they were
+ * requested.
+ */
+#define POLLERR 0x0008 /* some poll error occurred */
+#define POLLHUP 0x0010 /* file descriptor was "hung up" */
+#define POLLNVAL 0x0020 /* requested events "invalid" */
+
+int poll(struct pollfd _pfd[], nfds_t _nfds, int _timeout);
+
+#endif /* _POSIX_SYS_POLL_H_ */
reply other threads:[~2008-09-16 15:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48CFD5C7.8000908@eu.citrix.com \
--to=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.