#include #include #include #include #include "dietfeatures.h" /* * by Olaf Dreesen * * arm NO SMP ?!? (return 1) * * alpha -> cpus detected\t\t: \n * sparc -> ncpus active\t: \n * * default -> processor\t: \n (one per cpu) */ #ifdef SLASH_PROC_OK int __sc_nr_cpus(void); int __sc_nr_cpus() { #if defined(__arm__) return 1; #else int fd; fd = open("/proc/cpuinfo", O_RDONLY); if (fd==-1) return 1; /* fallback if no proc-fs mounted */ else { int n,nr=0; char buf[2048]; /* holds ~6 cpuinfos */ while((n=read(fd,buf,sizeof(buf)))>0) { register int i=0; while (i