#3331 closed defect (fixed)

i386 targets don't compile with --enable-smp

Reported by: Amaan Cheval Owned by: Amaan Cheval <amaan.cheval@…>
Priority: normal Milestone:
Component: arch/i386 Version:
Severity: normal Keywords: smp
Cc: Blocked By:


Build error:

/home/amaan/repos/rtems/kernel/cpukit/include/rtems/score/percpu.h:384:23: error: variable or field 'Interrupt_frame' declared void
   CPU_Interrupt_frame Interrupt_frame;
/home/amaan/repos/rtems/kernel/cpukit/include/rtems/score/percpu.h:520:8: error: size of array 'unused_space_for_cache_line_alignment' is too large
   char unused_space_for_cache_line_alignment
Makefile:764: recipe for target 'ckinit.o' failed

Besides these compile and link-time issues, the i386 does not support SMP fully, but as a first step, we should at least have it build.

Possibly related to #2623.

Change History (2)

comment:1 Changed on 03/16/18 at 16:02:17 by Amaan Cheval <amaan.cheval@…>

Owner: set to Amaan Cheval <amaan.cheval@…>
Resolution: fixed
Status: newclosed

In efa0039e/rtems:

i386/smp: Export _CPU_SMP_Prepare_start_multitasking as a function

When it's a macro, a function declaration causes a compiler error due to the
macro being expanded.

Partial log showing error:

Closes #3331

comment:2 Changed on 03/17/18 at 06:29:50 by Amaan Cheval

Closing this issue involved 3 commits:


The git-hook only posted the last to this ticket - perhaps because the commit message said "updates" instead of "update"?

Note: See TracTickets for help on using tickets.