[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] start of day, special pages

>> Yes, I understand that but it's not my question. My question is where I
>> should map it to when handing off control to another kernel.
> Oh, I think you just leave it alone.
But it seems that xen does something different and in my own bootstrap
code I have to take special care to move them out of the way and I put
them in the end of mfn list.

> Oh, but you are saying: "> >> Now I'm able to load pvgrub2 from pvgrub2. Now 
> I'm trying to load 
>>>> NetBSD. Apparently NetBSD assumes that console interface is mapping in
>>>> start-of-day layout and I paid special care not to map any special pages
>>>> in start-of-day. Which special pages have to be mapped and where?
> " which means that NetBSD expects something else besides
> this structure?
Yes, looks like it expects, at least that the console page is in mfn
list, no farther than some point, possibly even mapped in default.
It's not even clear to me why you would assume console page to be in mfn
list in the first place.
> It eventually ends up calling xen_bootstrap_tables which does this:
>  if ((xpmap_ptom_masked(page - KERNBASE) >> PAGE_SHIFT)  
>                             == xen_start_info.console.domU.mfn) {             
>                                 xencons_interface = (void *)page;             
>                                 pte[pl1_pi(page)] = 
> xen_start_info.console_mfn; 
>                                 pte[pl1_pi(page)] <<= PAGE_SHIFT;             
>                                 __PRINTK(("xencons_interface "                
>                                     "va %#lx pte %#" PRIxPADDR "\n",          
>                                     xencons_interface, pte[pl1_pi(page)]));   
>                         }                                                     
> which is to say to make xencons_interface be a pointer to this MFN.
Yes and this if is never triggered.
> Based on that I think it does the mapping as it boots up.
Possibly but looks like console page is not there in the list where
netbsd expects it.
> The initial printks are done using the hypercall_io.
They don't work for me.
> Could it be that the hypercall page is not setup properly?
I set up the hypercall page. I suppose that it's correct but I'm not
100% sure.
> Is it doing any of the ELF
> parsing to figure out where to start the OS and such?
Yes, it does ELF parsing. And it parses __xen_guest/Note phdr as well.

Attachment: signature.asc
Description: OpenPGP digital signature

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.