summaryrefslogtreecommitdiffstats
path: root/c/src/exec/score/cpu/unix/cpu.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2002-07-22Remove, moved to cpukit.Ralf Corsepius1-1137/+0
2002-03-282001-03-28 Joel Sherrill <joel@OARcorp.com>Joel Sherrill1-0/+3
* cpu.c: Define fix_syscall_errno() to nothing so MP links.
2001-01-252001-01-25 Joel Sherrill <joel@OARcorp.com>Joel Sherrill1-5/+9
* cpu.c, rtems/score/cpu.h: Bug report from Peter Mueller <peter.o.mueller@gmx.de> because of not correcting for the ISR vector table now being allocated from the workspace.
2000-06-12Works on Solaris and Linux.Joel Sherrill1-8/+6
2000-06-12Merged from 4.5.0-beta3aJoel Sherrill1-6/+21
1999-11-16Only check for System V IPC if multiprocessing is enabled. The unixJoel Sherrill1-1/+8
port only uses System V IPC for shared memory and semaphores to communicate between nodes in a multiprocessor configuration. If you disable multiprocessing, then this code should be unused. Thus systems like Cygwin which are POSIX but do not support System V IPC should not work.
1999-10-05Bug report and fix from Jay Kulpinski <jskulpin@eng01.gdds.com> whereJoel Sherrill1-3/+2
sigemptyset(&old_mask) needed to be added on glibc2 systems. Ian Lance Taylor pointed out that sigemptyset() is portable so Joel removed all conditionals around calls to sigemptyset().
1999-08-12Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1-14/+8
After upgrading my linux box to the brand new SuSE 6.2 release, which is glibc-2.1 based, I came across a bug in RTEMS - IIRC, I even warned you about it about 1/2 a year ago, but nothing has been done since then :-. The *.m4 macros to check for SYSV/IPC are broken for linux/glibc2.1, because they assume that linux always defines union semun, which isn't true anymore for glibc2.1 (the manpage for semctl states _X_OPEN specifies it this way). Therefore I have tried to implement a more general approach for handling SYSV for unix/posix which checks for presence of struct semun, instead of trying to evaluate OS specific preprocessor symbols. This approach is a bit adventureous, because I only tested it with linux/glibc2.1 and linux/libc5, but not under other Unix variants RTEMS supports. I am quite confident it will work on other hosts, too, but who knows :-. [FYI: I think this might also is the cause of some problems with RedHat 6.X / Mandrake linux recently reported on the rtems list -- rtems-4.0.0 can not be build for posix on any glibc2.1 based host] Furthermore the patch below contains a couple of minor fixes and configuration cleanups, which IMO should be applied before releasing a new snapshot. To apply this patch: cd <source-tree> patch -p1 < rtems-rc-19990709-8.diff ./autogen
1998-10-28Patch from Ian Lance Taylor <ian@airs.com>.Joel Sherrill1-11/+19
I just happened across the sync_io support in c/src/exec/score/cpu/unix/cpu.c (is this documented anywhere?). That looked more useful than the signal driven I/O I was using before, so I tried it. I ran across a few bugs in the way it uses select. Select changes its fd_set arguments, so you can't use global variables for them. You have to copy them into local variables first. If select returns -1 with errno set to EINTR, then it has not changed any of the fd_sets. You can't start looking at them. When clearing a descriptor, the code has the usual select off by one error when setting sync_io_nfds. I don't see how this code could ever have worked correctly. I have appended a patch for the problems I found.
1998-06-18Added freebsd support from Dario Alcocer <alcocer@connectnet.com>.Joel Sherrill1-2/+7
1998-04-14Ralf Corsepius suggested a way to get rid of UNIX compiler files and use ↵Joel Sherrill1-1/+0
gcc-target-default.cfg
1998-03-31Added "sigemptyset()" call to insure that the memcmp() would work.Joel Sherrill1-0/+4
It appears that the new glibc does not clear all the bits of the signal set with a sigprocmask.
1998-03-27Changed int to unsigned32 to match cpu.h.Joel Sherrill1-1/+1
1998-03-24Added _XOPEN_SOURCE definition to allow use of UNIX IPC.Joel Sherrill1-0/+1
1998-03-24Rename hppa1_1 to hppa1.1 and switched to using __XXX__ macros forJoel Sherrill1-4/+4
the CPU family name constants.
1998-01-28Change to remove warning on glibc2 systems per Ralf Corsepius'sJoel Sherrill1-1/+6
suggestion.
1998-01-23Solaris port updates from Chris JohnsJoel Sherrill1-10/+0
1997-10-08Fixed typo in the pointer to the license terms.Joel Sherrill1-2/+2
1997-04-22Patch from Chris John <cjohns@awa.com.au> to add use of a select statementJoel Sherrill1-2/+123
in the unix port idle thread task. This should keep the entire application from blocking when any component does a blocking application. Also added TOD_MICROSECONDS_TO_TICKS.
1997-04-22multiprocessing fixed on linux by fixing cpu.c so correct form ofJoel Sherrill1-3/+4
semctl was being invoked.
1997-04-22updated with new license information per Tony Bennett.Joel Sherrill1-10/+4
1997-04-07added initialization of variable to eliminate warning.Joel Sherrill1-1/+1
1997-04-01This set of changes is the build of what was required to convert toJoel Sherrill1-2/+2
GNU autoconf. This is the first large step in allowing an RTEMS user to perform a one-tree build (per crossgcc FAQ) including RTEMS in the build process. With this change RTEMS is configured in built in the same style as the GNU tools, yet retains the basic structure of its traditional Makefiles (ala Tony Bennett). Jiri Gaisler (jgais@wd.estec.esa.nl) deserves (and received) a big thank you for doing this. There are still issues to be resolved but as of this commit, all target which can be built on a linux host have been using a modified version of the source Jiri submitted. This source was merged and most targets built in the tree before this commit. There are some issues which remain to be resolved but they are primarily related to host OS dependencies, script issues, the use of gawk for hack_specs, and the dependence on gcc snapshots. These will be resolved.
1997-03-10initialized a stack variable to avoid a warning.Joel Sherrill1-1/+1
1996-09-30fixed incorrect placement of CPU_STRUCTURE_ALIGNMENT macro.Joel Sherrill1-2/+2
1996-09-18corrected white space problemsJoel Sherrill1-60/+62
added CPU_STRUCTURE_ALIGNMENT to default context structures
1996-05-23updates from Tony Bennett.Joel Sherrill1-58/+76
Broke the setjmp/longjmp pair in the context switch into a separate routine so no code depended on local variables surviving the jump.
1996-05-08*** empty log message ***Joel Sherrill1-1/+2
1996-04-22added stack allocation fields to the cpu tableJoel Sherrill1-23/+53
updates from Tony Bennett. Most were to insure all variables were properly initialized and to correct the stray signal number reporting.
1996-02-21Dispersal of internal thread handler resulted in IDLE thread becomingJoel Sherrill1-2/+2
part of the Thread Handler. This required the name of the optional CPU dependent IDLE thread implementation to change.
1996-02-09added clear of _ISR_Signals_to_thread_executingJoel Sherrill1-0/+1
1996-01-15updates from Tony Bennett for PA and UNIX portsJoel Sherrill1-14/+28
1995-10-30SPARC port passes all testsJoel Sherrill1-46/+6
1995-10-06moved to new development machine and went to gcc 2.7.0Joel Sherrill1-0/+3
1995-09-29all targets compile .. tony's patches in placeJoel Sherrill1-1/+1
1995-09-27Modified UNIX simulator port so all references to native unixJoel Sherrill1-13/+291
stuff is in the executive source proper in the file cpu.c. This should help avoid conflicts between RTEMS POSIX files and UNIX files.
1995-09-26posix support initially addedJoel Sherrill1-2/+2
1995-09-19Minor bug fixes to get all targets compilable and running. TheJoel Sherrill1-29/+56
single biggest changes were the expansion of the workspace size macro to include other types of objects and the increase in the minimum stack size for most CPUs.
1995-09-11The word "RTEMS" almost completely removed from the core.Joel Sherrill1-5/+24
Configuration Table Template file added and all tests modified to use this. All gvar.h and conftbl.h files removed from test directories. Configuration parameter maximum_devices added. Core semaphore and mutex handlers added and RTEMS API Semaphore Manager updated to reflect this. Initialization sequence changed to invoke API specific initialization routines. Initialization tasks table now owned by RTEMS Tasks Manager. Added user extension for post-switch. Utilized user extensions to implement API specific functionality like signal dispatching. Added extensions to the System Initialization Thread so that an API can register a function to be invoked while the system is being initialized. These are largely equivalent to the pre-driver and post-driver hooks. Added the Modules file oar-go32_p5, modified oar-go32, and modified the file make/custom/go32.cfg to look at an environment varable which determines what CPU model is being used. All BSPs updated to reflect named devices and clock driver's IOCTL used by the Shared Memory Driver. Also merged clock isr into main file and removed ckisr.c where possible. Updated spsize to reflect new and moved variables. Makefiles for the executive source and include files updated to show break down of files into Core, RTEMS API, and Neither. Header and inline files installed into subdirectory based on whether logically in the Core or a part of the RTEMS API.
1995-08-04cleanup and optimization from TonyJoel Sherrill1-12/+18
1995-08-02*** empty log message ***Joel Sherrill1-1/+0
1995-07-18fixed for LinuxJoel Sherrill1-13/+24
1995-07-18merged Linux UNIX simulator support (C)Joel Sherrill1-0/+22
1995-07-12Ada95, gnat, go32Joel Sherrill1-292/+352
1995-05-24Fully tested on all in-house targetsJoel Sherrill1-8/+17