Sebastian Huber commented on a discussion on bsps/sparc/leon3/start/eirq.c: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1514#note_160097

 >  
 >  #ifdef LEON3_IRQAMP_IRQMAP
 >  /* Mapping from bus interrupt lines to IRQ(A)MP interrupt lines */
 > -rtems_vector_number LEON3_IrqCtrl_Mapping[ BSP_INTERRUPT_VECTOR_MAX_MAP + 1 
 > ];
 > +rtems_vector_number LEON3_IrqCtrl_Mapping[ BSP_INTERRUPT_VECTOR_COUNT ];
 > +
 > +/*
 > + * A map field is eight bits wide.  A field value above the last interrupt
 > + * line of the IRQ(A)MP selects no interrupt line.  Line 0 is no interrupt.
 > + */
 > +static rtems_vector_number leon3_irqmap_line( uint32_t field )

I removed the check. The BSP takes the field modulo BSP_INTERRUPT_VECTOR_COUNT, 
which compiles to a mask. Even a faulty register value then gives a valid 
dispatch table index and a defined bit shift. A comment states that such a 
value is a hardware fault. rtems/tools/rtems-sis!13 also stores a written field 
modulo 32 now.

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1514#note_160097
You're receiving this email because of your account on gitlab.rtems.org. 
Unsubscribe from this thread: 
https://gitlab.rtems.org/-/namespace/49/sent_notifications/5-8frp48radtjwtwa5j0nazp34z-1d/unsubscribe
 | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | 
Help: https://gitlab.rtems.org/help


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to