Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Aug 2002 05:39:14 -0300
From:      Craig Hawco <dest@syd.eastlink.ca>
To:        freebsd-hackers@freebsd.org
Subject:   SMP on Intel SE7500CW2
Message-ID:  <5.1.0.14.0.20020827052903.00bbe268@pop.syd.eastlink.ca>

next in thread | raw e-mail | index | archive | help
Hello,

I've been looking into PR i386/40564 as I'm the owner of an Intel 
SE7500CW2. I managed to track it down to start_ap in mp_machdep.c.

snippet from start_ap():

         while (read_apic_timer())
                 if (mp_ncpus > cpus)
                         return 1;       /* return SUCCESS */


After a bit of poking around I found mpboot.s as the location of where 
mp_ncpus gets increased (mp_begin) after the AP has been started. The 
startup code for the AP is also in mpboot.s. Not being a kernel hacker I'm 
kind of stuck at this point. Windows and Linux work with this board, so 
it's probably not a hardware problem. Start_ap also appears to follow the 
Intel MP Spec very closely, after a quick glance, so I'm at a loss. Is an 
interrupt being lost somewhere? Is the problem occuring before the AP even 
executes its startup code and thus never executing mp_begin? I'm not an 
assembly programmer, and only have a very loose understanding of assembly, 
so actually understanding anything going on in mpboot.s is not very likely. 
Any help would be greatly appreciated.


Craig Hawco



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5.1.0.14.0.20020827052903.00bbe268>