aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonas Karlsson <[email protected]>2013-11-22 09:50:34 +0100
committerLukas Larsson <[email protected]>2014-02-24 15:16:02 +0100
commit2145db903b665622ea885db175c5e606d9f840a4 (patch)
tree624962ca6df626a525edf1fe843f1cf532242725
parent3d24208d607501207af371098c1466758844e667 (diff)
downloadotp-2145db903b665622ea885db175c5e606d9f840a4.tar.gz
otp-2145db903b665622ea885db175c5e606d9f840a4.tar.bz2
otp-2145db903b665622ea885db175c5e606d9f840a4.zip
ose: OSE port related cleanup and fixes
Some OSE cross-chains have problems with system includes being used, so for atleast OSE specific parts we use "" instead of <>.
-rw-r--r--erts/emulator/drivers/common/efile_drv.c12
-rw-r--r--erts/emulator/sys/ose/sys.c28
-rw-r--r--erts/lib_src/ose/ethread.c31
3 files changed, 33 insertions, 38 deletions
diff --git a/erts/emulator/drivers/common/efile_drv.c b/erts/emulator/drivers/common/efile_drv.c
index 7ef985dc41..b62e9a0306 100644
--- a/erts/emulator/drivers/common/efile_drv.c
+++ b/erts/emulator/drivers/common/efile_drv.c
@@ -99,7 +99,16 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
+
+#ifndef __OSE__
+#include <ctype.h>
+#include <sys/types.h>
#include <stdlib.h>
+#else
+#include "ctype.h"
+#include "sys/types.h"
+#include "stdlib.h"
+#endif
/* Need (NON)BLOCKING macros for sendfile */
#ifndef WANT_NONBLOCKING
@@ -113,8 +122,7 @@
#include "erl_threads.h"
#include "gzio.h"
#include "dtrace-wrapper.h"
-#include <ctype.h>
-#include <sys/types.h>
+
void erl_exit(int n, char *fmt, ...);
diff --git a/erts/emulator/sys/ose/sys.c b/erts/emulator/sys/ose/sys.c
index ba8851e203..a62d7c150b 100644
--- a/erts/emulator/sys/ose/sys.c
+++ b/erts/emulator/sys/ose/sys.c
@@ -20,29 +20,19 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
+#include "sys/time.h"
+#include "time.h"
+#include "sys/uio.h"
+#include "termios.h"
+#include "ctype.h"
+#include "termios.h"
-#ifdef ISC32
-#define _POSIX_SOURCE
-#define _XOPEN_SOURCE
-#endif
-
-#include <sys/time.h>
-#include <time.h>
-
-#include <sys/uio.h>
-#include <termios.h>
-#include <ctype.h>
-
-#ifdef ISC32
-#include <sys/bsdtypes.h>
-#endif
-
-#include <termios.h>
#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
+#include "fcntl.h"
#endif
+
#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
+#include "sys/ioctl.h"
#endif
#define ERTS_WANT_BREAK_HANDLING
diff --git a/erts/lib_src/ose/ethread.c b/erts/lib_src/ose/ethread.c
index 41c3392677..f3cb4ed0ec 100644
--- a/erts/lib_src/ose/ethread.c
+++ b/erts/lib_src/ose/ethread.c
@@ -26,21 +26,21 @@
#include "config.h"
#endif
-#include <stdio.h>
+#include "stdio.h"
#ifdef ETHR_TIME_WITH_SYS_TIME
-# include <time.h>
-# include <sys/time.h>
+# include "time.h"
+# include "sys/time.h"
#else
# ifdef ETHR_HAVE_SYS_TIME_H
-# include <sys/time.h>
+# include "sys/time.h"
# else
-# include <time.h>
+# include "time.h"
# endif
#endif
-#include <sys/types.h>
-#include <unistd.h>
+#include "sys/types.h"
+#include "unistd.h"
-#include <limits.h>
+#include "limits.h"
#define ETHR_INLINE_FUNC_NAME_(X) X ## __
#define ETHREAD_IMPL__
@@ -380,19 +380,16 @@ ethr_thr_create(ethr_tid *tid, void * (*func)(void *), void *arg,
/*erts_fprintf(stderr, "creating process %s / stack %d\n", opts->name, use_stack_size);*/
-#if 0
ramlog_printf("[0x%x] process '%s', coreNo = %u\n",
current_process(), opts->name, opts->coreNo);
-#endif
- tid->id = create_process(/*OS_PRI_PROC*/OS_BG_PROC, opts->name, thr_wrapper,
- use_stack_size, /*opts->prio+5*/31, 0,
- blockId(), NULL, 0, 0);
+ tid->id = create_process(OS_PRI_PROC, opts->name, thr_wrapper,
+ use_stack_size, /*opts->prio+5*/24, 0,
+ get_bid(current_process()), NULL, 0, 0);
- /* For now we do not attempt to bind schedulers to different cores.
if (ose_bind_process(tid->id, opts->coreNo)) {
- printf("[0x%x] Binding pid 0x%x (%s) to core no %u.\n",
- current_process(), tid->id, opts->name, opts->coreNo);
- }*/
+ printf("[0x%x] Binding pid 0x%x (%s) to core no %u.\n",
+ current_process(), tid->id, opts->name, opts->coreNo);
+ }
/*FIXME!!! Normally this shouldn't be used in shared mode. Still there is
* a problem with stdin fd in fd_ processes which should be further