Context: https://lists.rtems.org/pipermail/devel/2018-March/020409.html
I just realized that it may make more sense to use uint8_t and a CPU_INTERRUPT_FRAME_SIZE of 1 instead, if we _do_ want to leave it unused but defined. Another option I considered was simply setting a preprocessor flag to disable the use of CPU_Interrupt_frame, despite HAS_SMP being set (for eg. DISABLE_INTERRUPT_FRAME, so only i386 can opt out of that?) Let me know if either of those seem any better. On Sat, Mar 10, 2018 at 7:42 PM Amaan Cheval <amaan.che...@gmail.com> wrote: > CPU_INTERRUPT_FRAME_SIZE needs to also be set to allow the RTEMS_STATIC_ASSERT > in percpuasm.c to be fulfilled. > Updates #3331 > --- > cpukit/score/cpu/i386/include/rtems/score/cpu.h | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > diff --git a/cpukit/score/cpu/i386/include/rtems/score/cpu.h b/cpukit/score/cpu/i386/include/rtems/score/cpu.h > index f78149c24b..b8ac218acc 100644 > --- a/cpukit/score/cpu/i386/include/rtems/score/cpu.h > +++ b/cpukit/score/cpu/i386/include/rtems/score/cpu.h > @@ -271,12 +271,20 @@ typedef void (*cpuExcHandlerType) (CPU_Exception_frame*); > extern cpuExcHandlerType _currentExcHandler; > extern void rtems_exception_init_mngt(void); > +#ifdef RTEMS_SMP > + #define CPU_INTERRUPT_FRAME_SIZE 4 > +#endif > + > /* > * This port does not pass any frame info to the > * interrupt handler. > + * For SMP, RTEMS assumes CPU_Interrupt_frame exists, > + * so we make it a fixed size which is never used. > */ > -typedef void CPU_Interrupt_frame; > +typedef struct { > + uint32_t unused_field; > +} CPU_Interrupt_frame; > typedef enum { > I386_EXCEPTION_DIVIDE_BY_ZERO = 0, > -- > 2.13.0 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel