| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
task to be deleted was created via the same API (i.e. were of the object
class created by this API). For example, a POSIX thread calling
the rtems_task_delete(SELF) directive would incorrectly update the RTEMS
object local pointer table.
Jennifer discovered this when moving tests implemented in C using the
Classic RTEMS API into a tree of Ada tests. The Ada tests were implicitly
using POSIX services. This lead to some unexpected behavior.
|
|
|
|
| |
so confdefs.h could see it.
|
|
|
|
|
|
|
| |
the system signals.h file.
Moved POSIX_signals_Siginfo_node type definition to this file to allow
confdefs.h to know the size per queued signal.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Here is the result of my nightly work to get RTEMS_ROOT=$srcdir working
with different shells and relative/absolute paths.
What I did is relatively simple in principle:
Instead of setting RTEMS_ROOT in configure.in and then let configure
substitute @RTEMS_ROOT@ inside the Makefiles, I now let each Makefile
set RTEMS_ROOT from each Makefile's @top_srcdir@ value.
The difference is subtile, but with enormous side effects:
- If RTEMS_ROOT is set in configure, then the same single value will be
propagated to all Makefiles. This breaks using relative paths, as the
relative path to the root of the source tree is used inside of all
subdirectory Makefiles.
- Now each Makefile.in sets RTEMS_ROOT = @top_srcdir@. top_srcdir is
computed individually by configure for each single Makefile.in, hereby
receiving the correct value, no matter if relative or absolute paths are
used.
To get this working, I needed to remove setting RTEMS_ROOT from
target.cfg.in, because this overrides the value of RTEMS_ROOT from each
individual Makefile.
Furthermore, I removed RTEMS_CUSTOM from the Makefiles and replaced all
"include $(RTEMS_CUSTOM)" directives with"include
$(RTEMS_ROOT)/make/custom/$(RTEMS_BSP)". Perhaps you don't like this,
but I think, to have one variable less is clearer and easier to
understand than having several variables refering to the next one.
I enclose a small patch to this mail, which
- fixes the config.h problem (to finally clearify misunderstands)
- removes assignment/subsitution of RTEMS_ROOT from configure.in
- contains a workaround for the application Makefile's RTEMS_ROOT
problem (reported by Eric)
- removes some unused lines from the toplevel Makefile.in
- removes assignment of RTEMS_ROOT from make/target.cfg.in
|
| |
|
|
|
|
|
| |
any directory in the build tree. The only variable which must be set
before the command "gmake" is invoked is RTEMS_BSP (e.g. RTEMS_BSP=erc32).
|
| |
|
|
|
|
|
|
| |
to lib/include.
Went to using a PROJECT_INCLUDE variable.
|
| |
|
|
|
|
| |
it is arbitrarily assumed to be 1 clock tick.
|
| |
|
| |
|
| |
|
|
|
|
| |
Ada interface where entry is a keyword.
|
|
|
|
| |
of switching to the modified GNU GPL.
|
|
|
|
|
| |
of lowest priority with the RTEMS IDLE thread. This was causing the lowest
priority GNAT Ada task to never run.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
cxe1001 of the ACVC 2.0.1. This allows gnat/rtems to pass the partition
tests.
|
| |
|
|
|
|
|
|
|
|
|
| |
argument indicates whether the task is to be placed at the head or tail of
its priority fifo when it is lowering its own priority. POSIX normally
follows the RTEMS API conventions but GNAT expects that all lowering of
a task's priority by the task itself will result in being placed at the
head of the priority FIFO. Normally, this would only occur as the result
of lose of inherited priority.
|
|
|
|
| |
get replaced as required.
|
|
|
|
| |
no one will ever get confused here again and try to enable dispatching. :(
|
| |
|
|
|
|
| |
stack size so more of acvc would pass.
|
| |
|
|
|
|
|
|
| |
to made signals sent to a particular thread from an ISR operated correctly.
This behavior was required by the exception detection/reporting code
in the gnat runtime.
|
|
|
|
|
|
|
|
| |
the timeout is given as a wall-time not an interval as was previously
implemented. Second, the interpretation of ETIMEDOUT behavior was
incorrect as all possible error cases needed to be checked before
this error was returned. This caused problems when the wall-time
specified was in the past.
|
| |
|
|
|
|
| |
visible to other files.
|
| |
|
|
|
|
| |
visible to other files.
|
|
|
|
|
|
|
|
|
|
|
|
| |
explicit to inherit scheduler to be consistent with FSU pthreads for gnat.
_POSIX_Threads_Create_extension: now inherit signal blocked mask from
creator if the new thread is a posix thread.
_POSIX_Threads_Initialize_user_threads: make sure posix initialization
threads start with a useful priority. If they inherit the priority
of the creating thread, they will end up at the same priority as the
idle thread. Since the idle thread does not yield, they will not run.
|
|
|
|
| |
not converted from core priority to posix priority.
|
|
|
|
| |
is changed into being a 0 delay.
|
|
|
|
|
| |
currently the only routine in this file simply returns the minimum stack
size for each thread.
|
| |
|
|
|
|
|
| |
later pthread_mutex_lock. This makes our behavior more compatible
with that of FSU pthreads.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
clock_getres: now checking for a null pointer being passed in
|
|
|
|
| |
code and added check for a NULL interval being passed in.
|
|
|
|
| |
condition variable
|
| |
|
|
|
|
| |
parameters. Also changed returns to macro of -1 and errno set.
|
| |
|
| |
|