Changeset 0d362ff3 in rtems


Ignore:
Timestamp:
Jul 23, 2018, 12:54:51 PM (17 months ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
4678d1a
Parents:
f8d00a3
git-author:
Sebastian Huber <sebastian.huber@…> (07/23/18 12:54:51)
git-committer:
Sebastian Huber <sebastian.huber@…> (07/25/18 08:07:42)
Message:

score: _SMP_Inter_processor_interrupt_handler()

Pass current processor control via parameter since it may be already
available at the caller side.

Files:
7 edited

Legend:

Unmodified
Added
Removed
  • bsps/arm/raspberrypi/irq/irq.c

    rf8d00a3 r0d362ff3  
    110110    /* reset mailbox 3 contents to zero */
    111111    BCM2835_REG(BCM2836_MAILBOX_3_READ_CLEAR_BASE + 0x10 * cpu_index_self) = 0xffffffff;
    112     _SMP_Inter_processor_interrupt_handler();
     112    _SMP_Inter_processor_interrupt_handler(
     113      _Per_CPU_Get_by_index(cpu_index_self)
     114    );
    113115  }
    114116  if ( cpu_index_self != 0 )
  • bsps/arm/shared/start/arm-a9mpcore-smp.c

    rf8d00a3 r0d362ff3  
    2323static void bsp_inter_processor_interrupt(void *arg)
    2424{
    25   _SMP_Inter_processor_interrupt_handler();
     25  _SMP_Inter_processor_interrupt_handler(_Per_CPU_Get());
    2626}
    2727
  • bsps/i386/pc386/start/smp-imps.c

    rf8d00a3 r0d362ff3  
    756756  smp_apic_ack();
    757757
    758   message = _SMP_Inter_processor_interrupt_handler();
     758  message = _SMP_Inter_processor_interrupt_handler(_Per_CPU_Get());
    759759
    760760  if ((message & SMP_MESSAGE_CLOCK_TICK) != 0) {
  • bsps/powerpc/qoriq/irq/irq.c

    rf8d00a3 r0d362ff3  
    101101#ifdef RTEMS_SMP
    102102        if (exception_number == 36) {
    103                 _SMP_Inter_processor_interrupt_handler();
     103                _SMP_Inter_processor_interrupt_handler(_Per_CPU_Get());
    104104                return;
    105105        }
  • bsps/powerpc/qoriq/start/bspsmp.c

    rf8d00a3 r0d362ff3  
    102102static void bsp_inter_processor_interrupt(void *arg)
    103103{
    104   _SMP_Inter_processor_interrupt_handler();
     104  _SMP_Inter_processor_interrupt_handler(_Per_CPU_Get());
    105105}
    106106#endif
  • bsps/sparc/leon3/start/bspsmp.c

    rf8d00a3 r0d362ff3  
    3333)
    3434{
    35   _SMP_Inter_processor_interrupt_handler();
     35  _SMP_Inter_processor_interrupt_handler(_Per_CPU_Get());
    3636}
    3737
  • cpukit/include/rtems/score/smpimpl.h

    rf8d00a3 r0d362ff3  
    166166 * @return The received message.
    167167 */
    168 static inline long unsigned _SMP_Inter_processor_interrupt_handler( void )
     168static inline long unsigned _SMP_Inter_processor_interrupt_handler(
     169  Per_CPU_Control *cpu_self
     170)
    169171{
    170   Per_CPU_Control *cpu_self;
    171   unsigned long    message;
    172 
    173   cpu_self = _Per_CPU_Get();
     172  unsigned long message;
    174173
    175174  /*
Note: See TracChangeset for help on using the changeset viewer.