On Thu, 2018-06-14 at 20:21 +0200, Almudena Garcia wrote: > Ok, I found the warning what you refers > > ../kern/thread.h:401:42: warning: implicit declaration of function > ‘cpu_number’; did you mean ‘cpu_idle’? [-Wimplicit-function- > declaration] > > After check the cpu_number.h file, feels that It don't define the > cpu_number function in multi-processor mode > > https://pastebin.com/rnpVCtXp > > But I don't found the source file to this library, to check the > implementation.
Hi Almudena, Did you see the kernel headers i386/i386/cpu_number.h ... /* * Machine-dependent definitions for cpu identification. * */ #ifndef _I386_CPU_NUMBER_H_ #define _I386_CPU_NUMBER_H_ #if NCPUS > 1 /* More-specific code must define cpu_number() and CPU_NUMBER. */ #define CX(addr, reg) addr(,reg,4) #else /* NCPUS == 1 */ #define CPU_NUMBER(reg) #define CX(addr,reg) addr #endif /* NCPUS == 1 */ #ifndef __ASSEMBLER__ #include "kern/cpu_number.h" #endif #endif /* _I386_CPU_NUMBER_H_ */ and kern/cpu_number.h: #ifndef _KERN_CPU_NUMBER_H_ #define _KERN_CPU_NUMBER_H_ /* * Definitions for cpu identification in multi-processors. */ int master_cpu; /* 'master' processor - keeps time */ #if (NCPUS == 1) /* cpu number is always 0 on a single processor system */ #define cpu_number() (0) #define CPU_L1_SIZE (1 << CPU_L1_SHIFT) #endif /* NCPUS == 1 */ #endif /* _KERN_CPU_NUMBER_H_ */ There are no definitions of cpu_number() for more processors than one :(