Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Jun 2007 01:01:48 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-amd64@freebsd.org
Cc:        Adam Soderlund <adamsod@nc.rr.com>
Subject:   Re: amd64 SMP AP init corrupting the BDA? (newbie)
Message-ID:  <200706270101.49313.jhb@freebsd.org>
In-Reply-To: <200605120829.k4C8T1gp025713@ms-smtp-02.southeast.rr.com>
References:  <200605120829.k4C8T1gp025713@ms-smtp-02.southeast.rr.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 12 May 2006 04:28:59 am Adam Soderlund wrote:
> Hi All,
> 
>             Hope this is the right place for questions like this.  I've got
> something bad going on when booting 6.1release or 7-current amd64 SMP, the
> bios data area on my machine is getting whacked (killing usb legacy, which
> in turn causes a hang when kernel tries to take over the host
> controller(s)).    I've debugged it a little bit and here is what I see.
> when setting up to launch the APs start_all_aps() calls into pmap_kenter()
> which is writing a pte to 0x000004e0 (physical).  
> 
>  
> 
> 0x04e0 in the BDA prior to pmap_kenter(va, boot_address)
> 
> 0x0000002B
> 
> 0x04e0 in the BDA after pmap_kenter(va, boot_address)
> 
> 0x03C10900      (boot_address on the way in 0x9C000)

The pmap_kenter() should not be changing that address.  The page tables 
actually are located after the kernel itself (just after kernend) in memory, 
so pmap_kenter() isn't going to be writing to a PTE at an address that low.

-- 
John Baldwin



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