summaryrefslogtreecommitdiffstats
path: root/c/src
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1995-06-05 22:59:47 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1995-06-05 22:59:47 +0000
commite8512eb679aa0d6b72685f25dd6b660912d51371 (patch)
tree11efbbf51cdbadc94ddb848246248690f751116a /c/src
parentchanged release number to 3.2.0 (diff)
downloadrtems-e8512eb679aa0d6b72685f25dd6b660912d51371.tar.bz2
incorporate Tony's patches:
+ c/src/lib/libc/support/generic/malloc.c did not initialize the sbrk amount + _Thread_Handler in c/src/exec/rtems/thread.c left a window during the begin extension which could result in a context switch fixed places which did not correctly distinguish between an CPU_isr and a CPU_isr_entry.
Diffstat (limited to 'c/src')
-rw-r--r--c/src/exec/libcsupport/src/malloc.c1
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/setvec.c18
-rw-r--r--c/src/lib/libc/malloc.c1
3 files changed, 11 insertions, 9 deletions
diff --git a/c/src/exec/libcsupport/src/malloc.c b/c/src/exec/libcsupport/src/malloc.c
index 7d0ba04143..702e6225ce 100644
--- a/c/src/exec/libcsupport/src/malloc.c
+++ b/c/src/exec/libcsupport/src/malloc.c
@@ -62,6 +62,7 @@ void RTEMS_Malloc_Initialize(
*/
starting_address = start;
+ RTEMS_Malloc_Sbrk_amount = sbrk_amount;
if (!starting_address) {
u32_address = (unsigned int)sbrk(length);
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/setvec.c b/c/src/lib/libbsp/i960/cvme961/startup/setvec.c
index ea3706c3b3..bfba01c271 100644
--- a/c/src/lib/libbsp/i960/cvme961/startup/setvec.c
+++ b/c/src/lib/libbsp/i960/cvme961/startup/setvec.c
@@ -57,32 +57,32 @@ void print_ipnd_imsk();
unsigned int Xint_2_Group_Map[8] = { 0, 1, 2, 5, 7, 3, 6, 4 };
-i960_isr set_vector( /* returns old vector */
+i960_isr_entry set_vector( /* returns old vector */
rtems_isr_entry func, /* isr routine */
unsigned int xint, /* XINT number */
unsigned int type /* RTEMS or RAW */
)
{
- i960_isr *intr_tbl, *cached_intr_tbl;
- i960_isr saved_intr;
+ i960_isr_entry *intr_tbl, *cached_intr_tbl;
+ i960_isr_entry saved_intr;
unsigned int vector, group, nibble;
unsigned int *imap;
if ( xint > 7 )
exit( 0x80 );
- cached_intr_tbl = (i960_isr *) 0;
- intr_tbl = (i960_isr *) Prcb->intr_tbl;
+ cached_intr_tbl = (i960_isr_entry *) 0;
+ intr_tbl = (i960_isr_entry *) Prcb->intr_tbl;
group = Xint_2_Group_Map[xint]; /* remap XINT to group */
vector = (group << 4) + 2; /* direct vector num */
if ( type )
rtems_interrupt_catch( func, vector, (rtems_isr_entry *) &saved_intr );
else {
- saved_intr = (i960_isr) intr_tbl[ vector ];
- /* return old vector */
- intr_tbl[ vector + 1 ] = /* normal vector table */
- cached_intr_tbl[ group ] = (i960_isr) func; /* cached vector */
+ saved_intr = (i960_isr_entry) intr_tbl[ vector ];
+ /* return old vector */
+ intr_tbl[ vector + 1 ] = /* normal vector table */
+ cached_intr_tbl[ group ] = (i960_isr_entry) func; /* cached vector */
}
if ( xint <= 3 ) imap = &Ctl_tbl->imap0; /* updating IMAP0 */
diff --git a/c/src/lib/libc/malloc.c b/c/src/lib/libc/malloc.c
index 7d0ba04143..702e6225ce 100644
--- a/c/src/lib/libc/malloc.c
+++ b/c/src/lib/libc/malloc.c
@@ -62,6 +62,7 @@ void RTEMS_Malloc_Initialize(
*/
starting_address = start;
+ RTEMS_Malloc_Sbrk_amount = sbrk_amount;
if (!starting_address) {
u32_address = (unsigned int)sbrk(length);