Daniel Cederman
2d7aad73ea
sparc: Fix context switch on SMP
...
We must not load registers (e.g. PSR) from the heir context area before
the heir stopped execution.
With this patch the write to PSR is divided into two steps. We first update
the current window pointer and then we restore the status registers and
enable traps. This allows us to move the first write to PSR to be before
the write to WIM, as there is now no risk that we get an interrupt where
the CWP and WIM would be inconsistent. We only need to make sure that we
do not use any of the non-global registers or instructions that affects
CWP for three instructions after the write.
In the earlier code the non-global %o1 register was used right after the
write to PSR, which required the use of three nop:s.
Close #2472 .
2015-11-17 08:59:23 +01:00
Sebastian Huber
72857659c1
score: Fix race condition on SMP
...
We must ensure that the Thread_Control::Wait information update is
visible to the target thread before we update its wait flags, otherwise
we may return out of date events or a wrong status.
Close #2471 .
2015-11-17 07:47:48 +01:00
Sebastian Huber
0c9bf40b89
Fix interrupt epilogue for ARMv7-AR and PowerPC
...
Close #2470 .
2015-11-17 07:47:31 +01:00
Sebastian Huber
12b5264318
libblock: Avoid NULL pointer access
2015-11-02 08:23:17 +01:00
Jan Sommer
b2d788b3f2
ada: Add missing include
...
Include stackimpl.h otherwise PTHREAD_MINIMUM_STACK_SIZE cannot be
evaluated.
2015-10-30 07:45:51 +01:00
Joel Sherrill
cb9bb9d13f
CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK was undocumented and not error checked
...
closes #2431 .
2015-10-27 07:32:41 -05:00
Sebastian Huber
ad659ff8f3
RFS: Fix resource leak
...
Update #2433 .
2015-10-26 07:29:11 +01:00
Ben Gras
bad82027eb
Fail gracefully if pax is not found
...
The $(PAX) variable is used unconditionally so it shouldn't be
left empty if not found at configure time. Fixes #2437 .
2015-10-23 00:08:53 +02:00
Joel Sherrill
ec6f20fc80
moxiesim/configure.ac: Fix typo
2015-10-20 18:08:48 -05:00
Joel Sherrill
13e705cfcb
h8sim-testsuite.tcfg: Add fsdosfsname01
...
closes #2432 .
2015-10-20 16:49:51 -05:00
Sebastian Huber
9c96ea780f
bsp/leon3: Fix Termios context usage
...
Only the context of the console device was used and this is wrong in
case more than one APBUART device is available.
2015-10-20 11:31:02 +02:00
Sebastian Huber
edf77328c1
rbheap: Fix rtems_rbheap_free()
...
Remove unused descriptor of merged free chunks from the free chain and
add them to the spare descriptors.
Update #2417 .
2015-09-11 11:31:27 +02:00
Sebastian Huber
deb3f298d1
libtests/rbheap01: Simplify
...
Update #2417 .
2015-09-11 11:29:06 +02:00
Marcos Diaz
44eb9893b5
Beaglebone: fix missing clobber in inline assembly.
...
flush_data_cache uses R0 directly but doesn't list it as a clobbered
register. Compiling with -O3 made this code break, since the function
that calls flush_data_cache already uses r0.
closes #2416 .
2015-09-10 13:30:43 -05:00
Martin Galvan
ccebc571d4
cpukit/libmisc/dumpbuf/dumpbuf.c: Fix compilation warnings
...
Compiling dumpbuf.c causes the following warning to be issued:
warning: pointer targets in passing argument 1 of 'snprintf' differ in signedness [-Wpointer-sign]
This happens because line_buffer is declared as unsigned.
Closes #2411 .
2015-09-03 16:09:22 -05:00
Martin Galvan
efb798e16e
cpukit/libnetworking/rtems/rtems_dhcp.c: Fix compilation error
...
Apparently 'free' is defined as a macro which takes two arguments and calls
rtems_bsdnet_free. When fixing #2405 I added a missing 'free' but didn't notice
it was non-standard.
Closes #2410 .
2015-09-03 15:43:03 -05:00
Martin Galvan
9e2197d5d7
cpukit/libmisc/dumpbuf/dumpbuf.c: Fix undefined behavior for sprintf()
...
I also used the 'n' versions of the string functions, #define'd magic numbers
and added a few comments.
Updates #2405 .
2015-09-03 12:34:06 -05:00
Martin Galvan
631d2548fa
tools/cpu/nios2/ptf.c: Fix leak of memory pointed to by new_prefix
...
Updates #2405 .
2015-09-03 12:34:01 -05:00
Martin Galvan
c62129c5bc
cpukit/libnetworking/rtems/rtems_dhcp.c: Fix leak on realloc failure for dhcp_hostname.
...
Closes #2405 .
2015-09-03 11:27:48 -05:00
Martin Galvan
1491f6948e
tools/cpu/nios2/memory.c: Fix uninitialized use of variable memory
...
Updates #2405 .
2015-09-03 11:27:45 -05:00
Martin Galvan
d781ad5086
various .h files: Add missing C++ extern wrappers
...
Updates #2405 .
2015-09-03 11:27:42 -05:00
Sebastian Huber
6d734bae46
arm: Replace __sync_synchronize() implementation
2015-09-01 10:00:14 +02:00
Sebastian Huber
35e0394165
arm: Use compiler memory barrier by default
2015-09-01 10:00:13 +02:00
Sebastian Huber
9ccdb1dfde
rbtree: Delete rtems_rbtree_find_control()
...
This function is hard to support in alternative implementations. It has
no internal use case.
2015-09-01 09:06:18 +02:00
Nick Withers
7a0df6b947
Respect 2^32 - 1 B NFSv2 maximum file size
...
closes #2384
2015-08-06 10:49:30 -04:00
Joel Sherrill
c9318aa8d1
user/c_user.texi: Correct info index entry
...
closes #2380 .
2015-08-03 09:35:47 -07:00
Joel Sherrill
652888c22d
ada-tests/support/init.c: Fix compile errors and warnings
...
closes #2379 .
2015-08-02 08:32:45 -07:00
Jan Sommer
1cf91e0b0a
Add __synch_synchronize function for arm
...
Fixes link failure when linking Ada programs on the raspberry pi
2015-08-01 10:20:18 -07:00
Nick Withers
dc475657bf
ampolish3: Use env to find perl more reliably
...
Fixes breakage on at least FreeBSD.
closes #2379 .
2015-08-01 10:08:55 -07:00
Michael Davidsaver
8da63adc4b
tftpDriver: close() false error
...
closes #2376 .
2015-07-29 11:00:29 -05:00
Sebastian Huber
3984a0e171
m68k: Include proper header file
2015-07-24 10:48:28 +02:00
Sebastian Huber
2f43241a2a
arm: Include proper header file
2015-07-23 20:35:16 +02:00
Sebastian Huber
0ad8a33650
i2c: Fix return status of i2c dev read/write
2015-07-23 09:12:42 +02:00
Sebastian Huber
f9a597950b
doc: Add SMP section to CPU Arch Supplement
2015-07-23 09:12:35 +02:00
Sebastian Huber
8b14cbd996
bsps/arm: Update due to API changes
2015-07-21 10:01:34 +02:00
Premysl Houdek
49c1d25dc2
bsp/tms570 Use bitfields instead of hard-coded values
...
Signed-off-by: Premysl Houdek <kom541000@gmail.com >
2015-07-20 21:06:55 +10:00
Premysl Houdek
9a84f98372
bsp/tms570: skipped 32bit field definitions and corrected single bit fields
...
there is no need to define access macros for field covering
whole registers. In addition, BSP_FLD32 does not work right
for field 32bit length.
Signed-off-by: Premysl Houdek <kom541000@gmail.com >
2015-07-20 21:06:42 +10:00
Joel Sherrill
3f923fd22e
Update date
2015-07-17 09:42:35 -05:00
Sebastian Huber
9154c3f99a
doc: Add thread dispatch details for SMP
2015-07-17 11:57:38 +02:00
Sebastian Huber
3bb342ca92
doc: Clarify interrupts disable problems on SMP
2015-07-17 11:57:08 +02:00
Sebastian Huber
b56ddbbd84
doc: Fix SMP task variables section
2015-07-17 09:21:46 +02:00
Sebastian Huber
e5a79e54d9
bsp/mpc83xx: Update due to header guard change
...
Close #2373 .
2015-07-17 07:59:35 +02:00
Joel Sherrill
db01d0cc61
sparc64/rtems/score/cpu.h: Delete dead declaration
2015-07-16 11:15:53 -07:00
Joel Sherrill
7e14385b46
sh/shared/startup/bspstart.c: Add include of percpu.h
2015-07-16 11:15:52 -07:00
Premysl Houdek
069560a5f9
bsp/tms570: source changes reflecting new headers.
...
Signed-off-by: Premysl Houdek <kom541000@gmail.com >
2015-07-16 11:15:52 -07:00
Pavel Pisa
602e395b4d
bsp/tms570: fix get time resolution after infrastructure change to timecounter.
...
The update fixes breakage of TMS570 support after Alexander Krutwig
switch of RTEMS time read to timecounter mechanism
bsps: Convert clock drivers to use a timecounter
Mechanism to specify odd (non 1 Mhz) time base update frequencies
implemented after objections of Martin Galvan.
Code is adjusted to convert RTEMS configuration parameter
microseconds_per_tick to such odd base if
TMS570_PREFERRED_TC_FREQUENCY is specified appropriately.
Signed-off-by: Premysl Houdek <kom541000@gmail.com >
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz >
2015-07-16 09:31:09 -07:00
Premysl Houdek
bea49c9477
bsp/tms570: New/generated header files for TMS570 SoC peripherals registers.
...
The header files are generated by script make_header.py.
Current script's version can be found at:
https://github.com/AoLaD/rtems-tms570-utils/tree/headers/headers/python
Registers offsets and fields have been extracted from reference manual.
Signed-off-by: Premysl Houdek <kom541000@gmail.com >
2015-07-16 09:31:09 -07:00
Joel Sherrill
4784214a6a
remaining bsp.h: Fix by hand to LIBBSP_@CPU@_@BSP_FAMILY@_BSP_H
...
These files were left after running the script in the previous patch.
2015-07-16 08:43:51 -07:00
Joel Sherrill
9cff822a26
Most bsp.h: Switch to LIBBSP_@CPU@_@BSP_FAMILY@_H for guard
...
This was done by the following script run from libbsp:
find * -name bsp.h | xargs -e grep -l "#ifndef.*_BSP_H" | while read b
do
echo $b
cpu=`echo $b | cut -d'/' -f1 | tr '[:lower:]' '[:upper:]' `
bsp=`echo $b | cut -d'/' -f2 | tr '[:lower:]' '[:upper:]' `
g="LIBBSP_${cpu}_${bsp}_BSP_H"
# echo $g
sed -e "s/ifndef _BSP_H/ifndef ${g}/" \
-e "s/define _BSP_H/define ${g}/" \
-i $b
done
2015-07-16 08:40:05 -07:00
Sebastian Huber
93f5adb644
powerpc: Do not use the ATB for e500 multilib
...
The e500v1 has no support for the ATB.
Update #2369 .
2015-07-15 10:52:40 +02:00