#1680 closed defect (fixed)

_ISR_Handler_initialization improper alignment correction

Reported by: Gedare Bloom Owned by: Joel Sherrill
Priority: normal Milestone: 4.11
Component: score Version: 4.11
Severity: normal Keywords:
Cc: Blocked By:
Blocking:

Description

There appears to be a problem with the alignment of _CPU_Interrupt_stack_high, at least I see a problem by inspection, although I haven't seen any symptoms.

Here is a diff showing what I think is a problem (and solution).
Index: isr.c
===================================================================
RCS file: /usr1/CVS/rtems/cpukit/score/src/isr.c,v
retrieving revision 1.19
diff -u -p -r1.19 isr.c
--- isr.c 29 Jun 2010 00:34:11 -0000 1.19
+++ isr.c 18 Aug 2010 18:12:24 -0000
@@ -63,7 +63,7 @@ void _ISR_Handler_initialization( void )

);

_CPU_Interrupt_stack_high = (void *)

  • ((uintptr_t) _CPU_Interrupt_stack_high & ~CPU_STACK_ALIGNMENT);

+ ((uintptr_t) _CPU_Interrupt_stack_high & ~(CPU_STACK_ALIGNMENT - 1));

/* Interrupt stack might have to be aligned and/or setup

  • in a specific way.

Attachments (1)

isr.diff (599 bytes) - added by Gedare Bloom on Aug 18, 2010 at 5:22:09 PM.
patch.

Download all attachments as: .zip

Change History (4)

Changed on Aug 18, 2010 at 5:22:09 PM by Gedare Bloom

Attachment: isr.diff added

patch.

comment:1 Changed on Aug 18, 2010 at 6:32:20 PM by Gedare Bloom

attachments.ispatch: 01
attachments.mimetype: application/octet-streamtext/plain

comment:2 Changed on Aug 19, 2010 at 11:14:14 AM by Joel Sherrill

Resolution: fixed
Status: newclosed

Patch committed. Thanks.

comment:3 Changed on Nov 24, 2014 at 6:58:28 PM by Gedare Bloom

Version: HEAD4.11

Replace Version=HEAD with Version=4.11 for the tickets with Milestone >= 4.11

Note: See TracTickets for help on using tickets.