Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Linux: Kernel

bug.. compiler or kernel source?

 

 

Linux kernel RSS feed   Index | Next | Previous | View Threaded


mikeg at weiden

Jan 3, 1998, 10:04 PM

Post #1 of 1 (457 views)
Permalink
bug.. compiler or kernel source?

Hello,
The following is an extract from mm/simp.c..
67 struct simp {
68 /* 1st cache lines */
69 struct per_processor private[NR_PROCESSORS];
70 /* next cache line */
71 struct header * usable_list;
72 spinlock_t lock;
73 char fill[sizeof(void*) - sizeof(spinlock_t)];
If compiling with SMP enabled and using a compiler newer than 2.7.2.3,
said compiler says fill is too large because (x86) sizeof(void*) is 4
and sizeof(spinlock_t) is 8. Make the result an unsigned, and it's
humongous. This with egcs,pgcc, and gcc-2.8.0 (released). 2.7.2.3 says
that the struct is 16384 (if I read the asm right).
Which one is correct behavior? Can this difference in behavior bite
in other places? And the real question.. is using sizeof in this
manner really OK?
At any rate, simp isn't currently used, so I chopped it out of the
Makefile.
'Nuther question while I'm at it. My CPU is an Overdrive-MMX150..
is that why I can't boot an SMP kernel? (yes dumb.. only to test)
-Mike

Linux kernel RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.